1

我正在运行 Windows 7 64 位。

我想制作一个 .bat 文件,它将运行我的 eclipse 项目的 main.class (最好)只使用那个 .bat 文件。该项目仍在建设中,因此每隔几分钟导出一个可运行的 jar 不是一个可接受的解决方案(也不是在所有机器上安装 eclipse)。此外,我真的不想再安装任何插件,我知道有一种方法可以使用 .bat 来做到这一点,但无法弄清楚。这是项目根文件夹的样子:

C:/.../ShootEmUp <-在里面我们有:

bin/
lib/
    natives/
    lots of .jar files
res/
src/
    ShootEm/
        OtherPackages/
        ShootEmMain.java
.classpath
.project
RunMe.bat

我在 .bat 文件中尝试了比我愿意承认的更多的组合。现在 RunMe.bat 看起来像:

@ECHO OFF

javac src.ShootEm.ShootEmMain.java
java -cp lib/*.jar;. src/ShootEm/ShootEmMain;

PAUSE

这当前会产生 javac: file not found: src.ShootEm.ShootEmMain.java 错误

我还尝试将 .bat 放在文件夹 ShootEmUp/src/ShootEm/ 中(在具有 public static void main [ShootEmMain.java] 的类旁边)并将 RunMe.bat 代码编辑为:

@ECHO OFF

javac ShootEmMain.java
java -cp ../../lib/*.jar;. ShootEmMain;

PAUSE

这似乎工作得更好一点,因为我会得到的错误是:

ShootEmMain.java:5:错误:包...不存在。(对于 lib 文件夹中的所有其他 jar,还有一大堆)

需要注意的是我已经添加了 C:\Program Files\Java\jdk1.7.0_25\bin; 到 Path 环境变量的值的前面。

我也尝试过 classpath 而不是 cp 和每个疯狂的语法组合列表(一旦我很沮丧),但无济于事。

我也意识到我的 .bat 示例并没有设置本地人,因为我不确定它在哪里适合这个烂摊子。先感谢您!

4

1 回答 1

1

您应该考虑使用antmaven 之类的工具来构建您的应用程序。这将简化您的工件的生产。

如果在你的环境中导出一个工作 jar 是不合理的,我很难想象你怎么能想象在你的环境中导出你的源代码更容易管理。

于 2013-09-16T21:05:29.690 回答