12

如何从命令提示符编译和运行 Java Eclipse 项目?

如何仅使用 java 文件名从命令行运行 Java Eclipse 项目。我不想使用 Eclipse 生成的类文件或 jar 文件。

可能吗?

即使使用 jar 文件,我也发现加载静态文件失败,FileNotFoundException如何解决?

我本来是想这样跑的——

http://www.skylit.com/javamethods/faqs/javaindos.html

javac然后java

4

4 回答 4

14

我知道一种老问题,但如果你想知道运行基于 Eclipse 的项目的命令提示符(即 Eclipse 使用的那个)

  1. 在 Eclipse 中运行您的项目
  2. 转到调试透视图
  3. (无论如何在我的屏幕上)左上角的窗口应该有一个小的“调试”选项卡。
  4. 右键单击项目名称,Properties在下拉列表底部选择
  5. 单击“命令行”字段(这可能是您想要的)。
  6. 按 [ctrl]+A & [ctrl]+C 选择并复制
  7. 将其粘贴到命令行中,或者
  8. (我所做的)在 Windows 中,创建新的*.bat文本文件并将其粘贴到那里......现在双击该文件应该运行你的 java proj。

如果你想从 Eclipse 中运行一些东西并且像我一样懒惰,这非常有用。

顺便说一句,我需要这个来导出项目以进行 uni 分配。当然,他们也希望看到*.java文件中的代码,而以上只是使用*.classEclipse 动态构建的文件。要批量编译您的 *.java 文件然后运行,您需要 在从上面的过程中获得javac的行之前放置一个适当的命令并相应地进行javaw调整 - 请查看 Java Docs。不过,Eclipse 已经完成了大部分与库类路径有关的艰苦工作(我使用了一些库)。

于 2014-05-13T03:36:42.023 回答
11

假设项目具有以下目录结构:

PROJECT_HOME
  -> lib (jar files)
  -> src (java code)
    -> hirondelle (top-level package; no .java files)
      -> ante (.java files)
        -> deluvian (.java files)

用 javac 编译

PROJECT_HOME>javac -cp lib\* src\hirondelle\ante\*.java src\hirondelle\ante\deluvian\*.java

这会就地编译,并在 .java 文件旁边创建 .class 文件。如果要将生成的类文件放在其他地方,请使用 -d 选项将它们放入现有目录:

PROJECT_HOME>javac -cp lib\* -d build src\hirondelle\ante\*.java src\hirondelle\ante\deluvian\*.java

如果您的 jar 位于不同的目录中,则类路径是一个由分号分隔的列表:

-cp lib\*;C:\abc\one.jar;C:\xyz\two.jar

有关更多信息,请参阅以下链接:

使用 javac 编译 - javapractices

从命令行构建 Eclipse Java 项目 - 代码日志

于 2014-06-24T08:04:35.810 回答
11

对于构建,您可以导出 Ant 构建文件。只需右键单击项目 ->导出-> Ant buildfiles。在命令 promt 上使用ant <buildfile>来构建项目。

看看这个答案:Eclipse: export running configuration for running the eclipse project from the console。

于 2013-09-19T20:05:57.527 回答
2

选择项目并单击 File->Export 打开一个新窗口。

从中选择 Runnablejar 选项并单击下一步按钮。

在启动配置中选择您的主类,并在导出目标中提供您要存储 jar 文件的路径。

于 2013-12-18T06:33:13.083 回答