首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >JDK问题-无法加载类文件

JDK问题-无法加载类文件
EN

Stack Overflow用户
提问于 2012-03-31 14:43:35
回答 2查看 1.9K关注 0票数 1

好吧,那么。一周前,我订购了一本关于Java (Sams在21天内自学java )的书,就在昨天才出版。我正在处理第一个示例代码,当我试图编译主代码时,我一直收到这个错误:

C:\VolcanoApplication.java:5:错误:找不到符号

VolcanoRobot dante =新VolcanoRobot();

^

符号:类VolcanoRobot

位置: VolcanoApplication类

C:\VolcanoApplication.java:5:错误:找不到符号

VolcanoRobot dante =新VolcanoRobot();

^

符号:类VolcanoRobot

位置: VolcanoApplication类

我试图编译的主要代码是:

代码语言:javascript
复制
public class VolcanoApplication
{
    public static void main(String[] arguments)
    {
        VolcanoRobot dante = new VolcanoRobot();
        dante.status = "exploring";
        dante.speed = 2;
        dante.temperature = 510;

        dante.showAttributes();
        System.out.println("Increasting speed to 3.");
        dante.speed = 3;
        dante.showAttributes();
        System.out.println("Changing temperature to 670.");
        dante.temperature = 670;
        dante.showAttributes();
        System.out.println("Checking the temperature.");
        dante.checkTemperature();
        dante.showAttributes();
    }
}

和VolcanoRobot.java文件:

代码语言:javascript
复制
public class VolcanoRobot
{
    String status;
    int speed;
    float temperature;

    void checkTemperature()
    {
        if(temperature > 660)
        {
            status = "returning home";
            speed = 5;
        }
    }

    void showAttributes()
    {
        System.out.println("Status: " + status);
        System.out.println("Speed: " + speed);
        System.out.println("Temperature: " + temperature);
    }
}

我无法让javac在命令提示符中的任何位置运行(我正在运行xp),所以我导航到我的javac.exe所在的位置(C:\Program ),然后从那里编译VolcanoApplication (VolcanoApplication位于C:的根上)

当我在任何地方输入Java时,我都会得到菜单,但没有javac。我声明了路径和类路径变量,但是它不起作用。有什么建议吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-03-31 14:49:44

最好的方法是通过进入环境变量并更改javac,从而使PATH包括C:\Program Files\jdk1.7.0_03\bin,从而使它从任何目录中运行。

一旦您这样做了,在命令提示符中输入javac就可以了。

javac之所以没有找到VolcanoRobot.java文件,是因为它不在javac搜索源文件的路径中。默认情况下,该路径包括当前目录,因此如果cd到包含VolcanoApplication.javaVolcanoRobot.java的目录,则

代码语言:javascript
复制
javac VolcanoRobot.java VolcanoApplication.java

...should做吧。如果没有,添加-cp .

代码语言:javascript
复制
javac -cp . VolcanoRobot.java VolcanoApplication.java

然后,您应该能够通过

代码语言:javascript
复制
java VolcanoApplication

...or

代码语言:javascript
复制
java -cp . VolcanoApplication

更新:由于我的主要工作站是基于Linux的,所以我没有在Windows 7(以前一直使用Windows)下做过这件事,所以我想知道它是否有什么特别之处。看上去不存在。我在我的Windows 7机器上安装了JDK,使用它没有任何问题。我就是这样做的:

  1. 打开命令提示符并键入javac并按Enter键,以确保没有安装我不记得的命令。我得到了来自甲骨文的JDK安装程序error.
  2. Downloaded通常的“无法识别为内部或外部命令的...is”。
  3. 运行了它,让它安装到默认的location.
  4. Opened控制面板中。
  5. 在搜索框中键入了"environ“(因为我很懒,也不想跟踪他们把它移到这个week).
  6. Clicked的位置--”编辑系统环境变量“选项),并在管理权限上单击”是“弹出问题。这打开了一个“系统属性”对话框和“高级”选项卡open.
  7. Clicked“环境变量.”按钮。在底部的“系统变量”框中,向下滚动到突出显示的Path.
  8. With,单击“编辑.”。按钮,它打开了“编辑系统变量”框。Windows中的C:\Program Files\Java\jdk1.7.0_03\bin.
  9. Clicked
  10. ,导航到位于地址栏中的JDK的bin目录,选择了all,并将该路径复制到“编辑系统变量”框中的clipboard.
  11. Back中,我将光标放在路径的末尾,键入分号(注意:不是冒号,并且周围没有空格),然后从该框中的clipboard.
  12. Clicked ( OK )按钮中粘贴路径,“环境变量”框中的“确定”按钮和“系统属性”框中的“确定”按钮。
  13. 打开一个新的逗号

javac并按Enter键。我获得了两个火山源文件的listing.

  1. Created帮助文件,并将它们放在一个目录中(在我的例子中,C:\tmp\j).
  2. Changed到那个directory.
  3. Typed:中)。

javac VolcanoRobot.java VolcanoApplication.java

...and按回车。我没有errors.

  • Typed:

java VolcanoApplication

...and按回车。它运行得很好,我从查看源文件中得到了预期的输出。

所以在Windows 7上这样做是没有问题的,也许我上面所做的会对你有所帮助。

票数 2
EN

Stack Overflow用户

发布于 2012-03-31 14:46:58

如果将C:\ Files\Java\jdk1.7.0_03\bin文件夹输入到系统路径环境变量中,则可能需要重新打开cmd.exe,因为它不会动态加载这些环境变量。

然后,您需要从应用程序的根运行javac。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/9956870

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档