【问题标题】:Compiling and running java program from command prompt (It runs in Eclipse)从命令提示符编译和运行 java 程序(在 Eclipse 中运行)
【发布时间】:2014-12-20 04:30:51
【问题描述】:

首先,让我告诉你,这是我第一次尝试用 Java 编写一些代码,所以,如果我的问题有点傻,请原谅。

在 windows 中,我使用 Eclipse 作为 IDE,如果单击 Eclipse 的运行按钮,我的项目就可以编译并运行良好。但是,当我尝试通过命令提示符编译和运行我的程序时,我遇到了很多错误。这些主要是:

error: package Jama does not exist
import Jama.SingularValueDecomposition;

error: cannot find symbol
       Sequence seq1=new Sequence(pdbFileName1); 

error: cannot find symbol
       ParsePDB parser=new ParsePDB();

error: cannot find symbol
       DynamicTable dt= new DynamicTable();

除了第一个之外,我多次获得了所有这些,但为了清楚起见,我只复制了一次。

现在,我想显示我的项目目录,

Workspace
    Project1
        .settings
         bin
         src
            Jama // this is another folder which I've found on the web and used it in my project 
            com
               src
                 assg1 // these 4 files are under com.src.assg1 package name
                    assg1.java // this one includes my main function
                    DynamicTable.java
                    ParsePDB.java
                    Sequence.java                    
         .classpath
         .project 

现在,我首先输入了cd workspace/Project1/src/com/src/assg1,然后输入了javac assg1.java,结果出现了我上面提到的错误。现在有谁知道我的问题是什么?

【问题讨论】:

  • 我认为 'Jama' 应该在您的源 'src' 文件夹或 java 类路径的一部分
  • @user3214281 正如你所说,我将其移至 src 文件夹并输入 javac assg1.java 但没有任何改变

标签: java eclipse command-prompt


【解决方案1】:

您需要从源代码根目录编译您的源代码。 .java 文件的相对路径应与其完全限定名相同:

cd workspace/Project1/src/
javac com/src/assg1/assg1.java

运行它(从同一目录):

java com.src.assg1.assg1

如果你想模拟 eclipse 正在做什么 - 源和生成类的单独目录:

cd workspace/Project1/
javac -sourcepath src -d bin src/com/src/assg1/assg1.java
java -cp bin com.src.assg1.assg1

【讨论】:

  • 是的,它的工作,谢谢,还有一个问题。现在,我应该怎么做才能运行这个编译的代码?我的意思是在 c++ 中我正在输入 ./a.out 在 java 中这个命令的等价物是什么?
  • 再次感谢您,它也有效,但让我遇到了新问题。我知道看起来我已经部分地问了我的问题,但它刚刚出现。现在在这个项目中,我阅读了一些 txt 文件,并将它们放在 workspace/Project1 文件夹下。但是,代码现在找不到它,我应该把它们放在哪里?在与 assg1.java 相同的目录下? @Banthar
  • 把 src 放在哪里?在我的 assg1.java 类中,我给出了像 String fname="readThisFile.txt" 这样的文件名,我应该将其更改为 fname="src/readThisFile.txt" 吗?
  • 在第一种情况下,src/ 是您的工作目录。您必须将所有文件放在那里或将路径更新为"../readThisFile.txt"。如果您使用第二个选项,Project1/ 是您的工作目录(就像从 eclipse 启动时一样),无需更改。
猜你喜欢
  • 1970-01-01
  • 2013-09-25
  • 2012-05-30
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多