java - 如何使用外部文件夹和 Jars 创建 Jar 文件

标签 java spring jar executable-jar

我使用 Spring、Apache Camel、Activemq 制作了一个简单的标准独立 java 应用程序来处理消息。

注意:我的应用程序没有任何 GUI。

我的项目结构如下。

enter image description here

SACLib文件夹有近70个外部jar(都是Spring、Camel和Activemq对应的jar)。

它在 Eclipse 中运行良好。所以现在我们想要部署到 Jar 文件中。我在 Eclipse 中尝试过,但我没有看到 Rod1、Rod2、Copy1 和 SACLib 文件夹在我的 Jar 文件中。

部署Jar后,如果我运行FirstConsumer.java,它会运行Rod1-->ThMapInfratab1-2.exe文件。为此,我提到了 .exe 文件的真实路径。

如何制作包含所有文件夹的 Jar 文件。

谢谢

最佳答案

嗯,这种工作通常是通过像 Apache Ant 这样的构建自动化工具来完成的。 , MavenGradle ,因此如果您想让下次自动发生这种情况,您可以在那里进行调查。

但是,如果您想手动执行...

首先,您的项目需要一个 META-INF 文件夹,您将在其中放置一个名为 MANIFEST 的文件。

该 list 包含一个指向您主类的Main-Class条目。您可以在 Java 教程中阅读相关内容:Setting Application's Entry Point .

但它也可以包含一个 Class-Path 条目,指向应用程序所需的所有其他 jar,并且应由可执行 jar 加载。

您可以阅读 Java 教程:Adding Classes to your Jar Class Path .

如果您使用 Eclipse 构建可执行 jar,它会让您选择要在创建过程中使用的 MANIFEST 文件。

现在,如果您想使用构建自动化工具,这里还有其他答案解释了如何操作:

关于java - 如何使用外部文件夹和 Jars 创建 Jar 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18959331/

相关文章:

读取 csv 文件时出现 java.lang.NullPointerException 异常

java - 使用原生SQL查询时如何指定数据类型?

java - 如何在运行后保持应用程序窗口处于 Activity 状态?

java - TableView 自动调整行高大小 - JavaFX

java - JTextArea/JTextComponent setText 导致崩溃

java - 模拟器 View 只显示来自 sw320dp 的值?

java - 尝试在 Thymeleaf/Spring MVC 中创建删除按钮

java - 在 Spring 单元测试中连接依赖项而不使用 @RunWith

java - 在命令行的类路径中包含 jars(javac 或 apt)

java - 防病毒软件正在阻止我的 inno setup 编译的可执行 .exe 文件