【发布时间】:2015-09-09 06:27:49
【问题描述】:
我正在使用 IntelliJ 进行 Java 开发。我想在我只有 shell 访问权限的另一台主机上运行我的应用程序。
当我在本地运行我的应用程序时,一切都很好。当我尝试在远程主机上编译代码时,我得到:
usr@host1:~/mp1/src$ javac -cp ../ Control.java
Control.java:10: error: cannot find symbol
private static Node genNode = null;
^
symbol: class Node
location: class Control
Control.java:25: error: cannot find symbol
genNode = new Node(hostname);
^
symbol: class Node
location: class Control
2 errors
文件Node.java在同一目录下:
mp1
├── src
│ ├── ClientControl.java
│ ├── Control.java
│ ├── Node.java
│ ├── Registrar.java
│ ├── ServerControl.java
│ ├── UX.java
├── lib
│ └── kryonet-2.21-all.jar
我也不能在本地编译,除非它来自 IDE,所以我认为我只是没有做正确的事情。我错过了什么?我只是希望能够从 shell 运行我的应用程序,我并不关心如何。
【问题讨论】:
-
可能你的IDE项目中有一个库,而你的基本lib文件夹中没有,所以编译器找不到它
-
嗯,也许是这样?我将我的库树添加到帖子中。知道如何修复它以便编译器可以看到它吗?
-
检查你是否配置了你的
JAVA_HOME来测试只是尝试命令echo %JAVA_HOME% -
请展示一个简短但完整的程序来说明问题。我们不知道您的代码在什么包中或类似的东西。您可以尝试一次编译所有代码:
javac -cp .. *.java -
@MrDuk:当你运行它时,这听起来像是一个错误(由于没有正确运行它 - 你在尝试运行时没有指定
.java文件代码,你只需指定类名)。
标签: java shell intellij-idea command-line-interface javac