【问题标题】:Javac can't find package referenced in classpathJavac 找不到类路径中引用的包
【发布时间】:2016-05-29 03:04:58
【问题描述】:

我正在尝试在 windows 中使用 javac 编译一个项目,但我收到“package x 不存在”错误。
即使包含它们的 jar 文件在类路径中。

这是命令,我只是添加了换行符以使其可读:

javac
  -d bin
  -sourcepath src
  -cp 
    .;
    lib/gson-2.5.jar;
    lib/jruby-complete-9.1.2.0.jar;
    lib/lwjgl-platform-2.9.3-natives-windows.jar;
    lib/lwjgl-platform-2.9.3-natives-linux.jar;
    lib/lwjgl-platform-2.9.3-natives-osx.jar;
    lib/jinput-platform-2.0.5-natives-windows.jar;
    lib/jinput-platform-2.0.5-natives-linux.jar;
    lib/jinput-platform-2.0.5-natives-osx.jar;
    lib/lwjgl.jar;
    lib/lwjgl_util.jar;
    lib/jorbis-0.0.17.jar;
    lib/jinput-2.0.5.jar;
    lib/gdx-platform-1.9.2-natives-desktop.jar;
    lib/gdx-controllers-platform-1.9.2-natives-desktop.jar;
    lib/gdx-freetype-platform-1.9.2-natives-desktop.jar;
    lib/gdx-1.9.2.jar;lib/gdx-backend-lwjgl-1.9.2.jar;
    lib/gdx-controllers-1.9.2.jar;
    lib/gdx-controllers-desktop-1.9.2.jar;
    lib/gdx-freetype-1.9.2.jar;
    lib/jlayer-1.0.1-gdx.jar;
    lib/jutils-1.0.0.jar
  src/com/azias/awbe/Launcher.java

这是错误信息:

src\com\azias\awbe\Launcher.java:3: error: package com.badlogic.gdx.backends.lwjgl does not exist
import com.badlogic.gdx.backends.lwjgl.LwjglApplication;
                                      ^
src\com\azias\awbe\Launcher.java:4: error: package com.badlogic.gdx.backends.lwjgl does not exist
import com.badlogic.gdx.backends.lwjgl.LwjglApplicationConfiguration;
                                      ^
src\com\azias\awbe\Launcher.java:16: error: cannot find symbol
                LwjglApplicationConfiguration config = new LwjglApplicationConfiguration();
                ^
  symbol:   class LwjglApplicationConfiguration
  location: class Launcher
src\com\azias\awbe\Launcher.java:16: error: cannot find symbol
                LwjglApplicationConfiguration config = new LwjglApplicationConfiguration();
                                                           ^
  symbol:   class LwjglApplicationConfiguration
  location: class Launcher
src\com\azias\awbe\Launcher.java:27: error: cannot find symbol
                new LwjglApplication(new AdvanceWarsBootleg(), config);
                    ^
  symbol:   class LwjglApplication
  location: class Launcher
src\com\azias\awbe\AdvanceWarsBootleg.java:3: error: package com.badlogic.gdx does not exist
import com.badlogic.gdx.Game;
                       ^
src\com\azias\awbe\AdvanceWarsBootleg.java:4: error: package com.badlogic.gdx.graphics.g2d does not exist
import com.badlogic.gdx.graphics.g2d.SpriteBatch;
                                    ^
src\com\azias\awbe\AdvanceWarsBootleg.java:6: error: cannot find symbol
public class AdvanceWarsBootleg extends Game {
                                        ^
  symbol: class Game
src\com\azias\awbe\AdvanceWarsBootleg.java:7: error: cannot find symbol
        public SpriteBatch batch;
               ^
  symbol:   class SpriteBatch
  location: class AdvanceWarsBootleg
src\com\azias\awbe\AdvanceWarsBootleg.java:9: error: method does not override or implement a method from a supertype
        @Override
        ^
src\com\azias\awbe\AdvanceWarsBootleg.java:17: error: method does not override or implement a method from a supertype
        @Override
        ^
src\com\azias\awbe\AdvanceWarsBootleg.java:19: error: cannot find symbol
                super.render();
                ^
  symbol:   variable super
  location: class AdvanceWarsBootleg
12 errors

【问题讨论】:

  • 你能提供你的jar文件的绝对路径吗?这是在 Windows 中对吧?
  • 项目文件夹位于:“C:\Users\Azias\Eclipse\workspace_neon\LibGDX - Advance Wars Bootleg Edition”。我应该尝试删除文件夹名称中的空格吗?
  • 我的意思是在命令中你能不能提供完整的路径而不是从 lib 开始。而且您确定其中一个罐子有包装吗?
  • 我刚刚尝试使用绝对路径和 ./ 之前,我仍然有同样的错误。并且包在“gdx-backend-lwjgl-1.9.2.jar”文件中。
  • 你能试试详细选项“-verbose”吗?它应该能让你对编译器正在做什么有所了解

标签: java compilation classpath javac


【解决方案1】:

使用 Java 6 或更高版本,classpath 选项支持通配符。请注意以下几点:

Use straight quotes (")
Use *, not *.jar

这样你就可以简化你的 javac 语句:

javac
  -d bin
  -sourcepath src
  -cp ".;libs/*"
  src/com/azias/awbe/Launcher.java

还取决于平台,分隔符为;(windows)或:(unix)。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2022-07-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-12-09
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多