Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/395.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 将maven shade jar包含到其他shade jar中_Java_Maven_Architecture_Maven Shade Plugin - Fatal编程技术网

Java 将maven shade jar包含到其他shade jar中

Java 将maven shade jar包含到其他shade jar中,java,maven,architecture,maven-shade-plugin,Java,Maven,Architecture,Maven Shade Plugin,我有两个Java项目数据服务应用程序和数据报告应用程序,数据服务应用程序生成某些用于某些处理的数据,数据报告应用程序应使用数据服务应用程序使用其生成的数据生成一些报告,这两个应用程序都应该构建为Jar文件,因此我计划使用maven shade插件,因为它们使用很多Jar 我需要将数据服务作为依赖项包含在数据报告中(由于某些限制,我无法使用任何其他技术,如rest)。我对这种方法有以下两个问题 1) 这两个应用都有log4j文件和data.properties,这两个文件都有特定于每个应用的属性,

我有两个Java项目数据服务应用程序和数据报告应用程序,数据服务应用程序生成某些用于某些处理的数据,数据报告应用程序应使用数据服务应用程序使用其生成的数据生成一些报告,这两个应用程序都应该构建为Jar文件,因此我计划使用maven shade插件,因为它们使用很多Jar

我需要将数据服务作为依赖项包含在数据报告中(由于某些限制,我无法使用任何其他技术,如rest)。我对这种方法有以下两个问题

1) 这两个应用都有log4j文件和data.properties,这两个文件都有特定于每个应用的属性,你能告诉我如何处理这种情况吗?我尝试了资源转换器,但没有工作。请告诉我是否有人成功使用了它

2) 由于这两个应用程序都使用类似的库,比如spring和hibernate,它会消除重复吗

3) 让我在一个应用程序中使用gson版本1和gson版本1.2,它将如何处理此类情况


4) 我的方法正确吗?由于一些限制,我不想使用maven模块。

不,每个jar应该是一个库或一个可执行jar(不是两者都是)。构建库时不应包含库(因此没有阴影插件)

因此,如果两个应用都使用了类,那么构建第三个jar作为库,并在两个应用中作为依赖项使用它

因此,要么你有三个不同的项目,要么你构建一个包含这三个项目的多模块项目,但这取决于具体情况