Maven独立的jar具有共享代码依赖性

时间:2017-04-07 05:30:46

标签: java maven jar dependencies

我只是在Maven上升,所以也许有些新手问题。我已经在我的谜题中找到了各种各样的部分但尚未找到关于如何实现以下内容的明确文档。

我有一些常见的java代码,我想在两个java应用程序之间共享。我使用maven模块进行了如下设置:

Root Dir
    pom.xml
    shared_code
       pom.xml
       src
           ...
    app1
       pom.xml
       src
           ...
    app2
       pom.xml
       src
           ...

目录中的pom.xml文件很简单,主要由

组成
<packaging>pom</packaging>
  <modules>
  <module>shared_code</module>
  <module>app1</module>
  <module>app2</module>
</modules>

pom.xml子文件夹中的shared_code只使用maven-compiler-plugin<packaging>jar</packaging>来创建jar文件。

pom.xml子文件夹中的app使用

maven-compiler-plugin
maven-jar-plugin
maven-dependency-plugin

并将shared_code模块标记为依赖项。

这没关系,但我没有达到目标。首先,我的资源很乱。我无法从shared_code获取资源以自动提供给app。其次,这会为每个jar创建一个app文件,其中只包含app的类。在子文件夹中(在生成的target文件夹中),我获得了所有依赖项jar,包括shared_code个。

有人可以解释如何实现以下目标吗

  1. 来自shared_code的资源会自动部署并提供给app。对于奖励积分,apps能否以某种方式覆盖资源?
  2. 如何创建单个jar文件而不是带有充满依赖项的子文件夹的jar?
  3. 如何创建可执行文件而不是jar?
  4. 对于其他奖励积分,请随时告诉我,我正在以非规范的方式解决问题,并完全纠正我。

1 个答案:

答案 0 :(得分:1)

这应该会给你一些如何实现目标的提示。要解释答案中的所有内容会破坏我认为的主题。

如果除了我给出的提示之外你还需要进一步的帮助,也许你可以将这两个主题的后续问题单独提出来。