【问题标题】:How to add a jar build by a project to the project in eclipse?如何将项目构建的jar添加到eclipse中的项目中?
【发布时间】:2011-01-27 16:25:41
【问题描述】:

我有一个项目,它作为构建过程的一部分创建了一个 XMLBeans jar 文件 (stbSchemas.jar),我想在这个项目中包含和引用它。

这是解决这个问题的最佳方式(单个项目)还是我应该有一个从父项目构建的子项目?

我在 Eclipse 中使用 Maven2 构建它。有没有更好的方法来做到这一点,以便我可以保持项目的完整性和构建的稳定性。

【问题讨论】:

  • “A”项目,“the”项目不是很清楚,你能澄清一下吗?另外,当前如何创建 XMLBeans jar?你用什么工具来做这件事。您有公司存储库吗?

标签: java eclipse maven-2 build jar


【解决方案1】:

嗯。如果我理解正确,您是说您需要在项目中引用 stbSchemas.jar 才能构建一些不会进入 stbSchemas.jar 文件的代码。如果这是一个正确的假设,那么我认为您可能应该进行一些重构,以便您拥有这样的东西:

1) 项目顶层的 Maven 父 pom 文件。该父 pom 有一个模块部分,它将引用步骤 2 中的 2 个模块。例如:

<modules>
  <module>stbSchemas</module>
  <module>core</module>
</modules>

2) 将代码拆分为干净的模块。 stbSchemas 将是第一个,您的其他代码将是第二个模块。这些模块中的每一个都有自己的 pom.xml 文件,该文件将引用父 pom 文件,如下所示:

<parent>
       <groupId>parent.group</groupId>
        <artifactId>parent</artifactId>
        <version>1.0-SNAPSHOT</version>
      </parent>

第二个模块的 pom.xml 文件也需要 stbSchemas.jar 的依赖部分,如下所示:

<dependency>
  <groupId>my.group</groupId>
  <artifactId>stbSchemas</artifactId>
  <version>1.0-SNAPSHOT</version>
</dependency>

然后,当您构建第二个模块时,它会选择 stbSchemas.jar。

3) 一旦你在 Maven 中完成了那个(或类似的)设置,你就可以使用 maven eclipse 插件 (mvn eclipse:eclipse) 为整个项目生成一个正确的 eclipse 类路径。然后,您可以在 Eclipse 中刷新项目,这会将 stbSchemas.jar 放在您的类路径中。

【讨论】:

    【解决方案2】:

    我的建议是,当您使用 Maven 构建 jar 时,让一个文件夹在您要使用此 jar 的项目中显示“运行时”。并且通过 maven 仅在创建 jar 后立即将 jar 复制到项目的运行时,因此无论何时您将有一个新的构建,您将在运行时文件夹中拥有最新的 jar。 现在让您的项目引用运行时文件夹中的 jar。通过将其添加到其构建路径中。 希望这会有所帮助

    【讨论】:

      【解决方案3】:

      编写脚本将 jar 复制到所需的文件夹并编辑项目的 .settings 文件夹中的 xml 文件,以通过相同的脚本将 jar 作为引用包含在内,或在运行时将其添加到其构建路径中。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2010-11-06
        • 2013-02-14
        • 2012-01-22
        • 2012-07-24
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多