在 Ubuntu 终端中编译复杂的 Java 程序

Compile complex Java program in Ubuntu terminal

我已经在 Ubuntu 中导出了我的 Eclipse Java 项目,其中包含所有 .java.class 文件。

项目组成如下:

- src
   - package1
        - file1.java
        ...
        - fileN.java
   ...
   - packageM
        - fileM.java
        ...
        - fileN.java

为了运行程序,我使用如下命令:

java -Djava.library.path="/path/to/opencv/lib" -cp lib/*:src package.to.main.class.MainClass 

现在,我只更改了 class 中的一行(这不是 MainClass),我想重新编译 运行 一切。但是,当以下列方式尝试使用 javac 时:

javac path/to/main/class/MainClass.java

我得到了数百万个错误,因为:

一些示例:

src/it/polimi/tweetcrawlingpipeline/pipeline/TweetCrawlingPipeline.java:7:    error: package org.opencv.core does not exist
import org.opencv.core.Core;
                  ^
  symbol:   class SVMSample
  location: class TweetCrawlingPipeline
  src/it/polimi/tweetcrawlingpipeline/pipeline/TweetCrawlingPipeline.java:158: error: cannot find symbol
   public GenericClassifier<SVMSample> getTextClassifier() {
               ^

我该如何解决这些问题?

谢谢。

这可能不是您想要的答案,但在命令行仅使用 javac 进行编译很快就会变得很痛苦。除非您将命令和类路径放入 shell 脚本中,否则它会变得很复杂。

如果可能的话,我建议使用像 ant、gradle 甚至 maven 这样的东西。好吧,maven 可能有点矫枉过正,但 ant 是一个合理的开始。