- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一个简单的 Java 程序(我们称之为 MyProgram.java),它执行一些 I/O、重命名一些图像、删除目录等。我一直在浏览 S/O 寻找一种简单的方法从命令提示符运行 Java 程序的 main 方法。我已将源代码编译到 jar 中,并尝试使用 Jar2EXE 向导,但是我不断收到意外的编译错误,而从 IDE 运行代码时却没有收到此错误。
是否有人拥有他们已经成功使用的 Jar -> EXE 转换器解决方案,或者可以指导我如何从批处理文件运行我的程序?
最佳答案
[..]or can walk me through how to run my program from a batch file?
最简单的方法是执行:
java -jar YOUR_JAR_FILE.jar
在你的批处理文件中。但是,这需要您的 jar 文件中存在一个 list 文件,该文件指定要使用的 Main 类及其依赖的 jar 文件。如果您不想使用 list 文件,您可以手动指定这些内容。如果你不依赖外部jar文件,你可以执行:
java -cp YOUR_JAR_FILE.jar some.package.Main
这将执行 YOUR_JAR_FILE.jar 中包含的类 some.package.Main 中的 public static main(String[] args)
方法。
如果您还依赖其他 jar 文件(在您的情况下为 IOUtils/FileUtils),请同时指定这些 jar 文件:
java -cp YOUR_JAR_FILE.jar:library1.jar:library2.jar some.package.Main
(在您的情况下,library1和library2分别是IOUtils和FileUtils)。
您可以指定任意数量的 jar 文件,还可以使用通配符 *.jar
来包含当前(或另一个)目录中的所有文件。但请注意,您不能编写 *
或 x*.jar
等。仅接受 *.jar
(或 some/directory/*.jar
)。
在 90% 的情况下,jar 文件的顺序没有任何区别。然而有时它确实会有所不同:如果从类路径加载资源(可以是类或简单的配置文件),则按照您指定的顺序搜索 jar 文件。如果某个资源存在于多个 jar 文件中,则仅使用找到的第一个。
关于java - 如何从 JAR 创建 Windows 可执行文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19791596/
我是一名优秀的程序员,十分优秀!