通过命令行在linux中编译Java类

Dra*_*gan 0 java compilation junit4

嗨,谢谢你花时间回答我的问题.

我的根文件夹中有两个文件(〜/).Main.Java和TestMain.java.Main.java编译并运行顺利.另一方面,TestMain没有.TestMain基本上是一个测试类,我使用JUnit来处理不同的场景.我在TestMain中实例化Main,但问题是编译器找不到Main.java.

这是代码:

    user@linuxbox ~ $ javac -cp junit-4.10.jar TestMain.java 
    TestMain.java:8: error: cannot find symbol
                Main mainClass = new Main();
                ^
      symbol:   class Main
      location: class TestMain
    TestMain.java:8: error: cannot find symbol
                Main luckyStrings = new Main();
                                                ^
      symbol:   class Main
      location: class TestMain
    2 errors
Run Code Online (Sandbox Code Playgroud)

如何让Main类可用于MainTest.java类?非常感谢!

rge*_*man 6

在类路径选项中,您已将类路径设置为 junit-4.10.jar.您还必须包含Java文件所在的当前目录.

javac -cp "junit-4.10.jar:." TestMain.java
Run Code Online (Sandbox Code Playgroud)

这包括两个路径--JUnit和当前目录,用a分隔:.(如果这是Windows,那么你将使用a ;作为分隔符).