【问题标题】:Add a jar file to another jar file将 jar 文件添加到另一个 jar 文件
【发布时间】:2018-06-11 22:45:42
【问题描述】:

在我的项目中,我有这段代码告诉类加载器像这样加载Driver.class

Class.forName(org.gjt.mm.mysql.Driver);

在 Eclipse 中运行没有问题,我已经创建了项目的 Jar 文件。但我不知道如何插入

mysql-connector-java-5.1.7-bin.jar

放入我项目的 Jar 文件中。文件夹结构如下:

清单文件:

Manifest-Version: 1.0
Main-Class: server.MultiServer

【问题讨论】:

    标签: java mysql jar


    【解决方案1】:

    我假设你最终只想运行你的代码

    java -jar myjar.jar
    

    有两种选择。

    1. 将 mysql-connector-java-5.1.7-bin.jar 保存在同一文件夹中的 jar 旁边,并将类路径:mysql-connector-java-5.1.7-bin.jar 添加到清单中。
    2. 将 mysql-connector-java-5.1.7-bin.jar 中的所有类复制到您的 jar 中。不要复制 jar,而是复制 jar 中的类。这被称为胖罐或超级罐。您可以使用 maven shade 插件自动执行相同的操作。

    【讨论】:

      【解决方案2】:

      当您调用应用程序 jar 时,添加 -cp 或 -classpath 选项并提供依赖库的路径,此处为 mysql-connector-java-5.1.7-bin.jar

      例如参考下面的例子

      java -jar -classpath C:\myproject\lib\mysql-connector-java-5.1.7-bin.jar myproject.jar

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-09-06
        • 1970-01-01
        • 2017-12-21
        • 2011-04-19
        • 1970-01-01
        相关资源
        最近更新 更多