我有两个问题:
1)我已经构建了一个maven项目,当我想在服务器上部署jar时,它会显示一些与找不到驱动程序有关的错误。然后我反编译我的jar,发现依赖数据库jar jconn jar不在那里。但我在我的代码中有那个jar,我在我的pom.xml中使用以下来获取我的jar的依赖jar,但它仍然无法获得依赖jar。在某处,我读了stackoverflow以将以下内容添加到我的pom.xml
<artifactId>maven-assembly-plugin</artifactId>
<configuration>
<archive>
<manifest>
<addClasspath>true</addClasspath>
<classpathPrefix>./</classpathPrefix>
<mainClass>com.launcher.Main</mainClass>
</manifest>
</archive>
<descriptorRefs>
<descriptorRef>jar-with-dependencies</descriptorRef>
</descriptorRefs>
</configuration>
</plugin>
仍然它给出了相同的东西,并且在反编译时jconn jar不在jar中。请帮忙。
2)我在属性文件中有一些键值对,值以逗号分隔的形式。我想在列表中获取该键的所有值。我怎样才能做到这一点。请帮忙
答案 0 :(得分:1)
要将其他罐子包括在你自己的(它叫做uber jar)你可以使用maven shade plugin
他们的文档示例:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-shade-plugin</artifactId>
<version>3.1.0</version>
<executions>
<execution>
<phase>package</phase>
<goals>
<goal>shade</goal>
</goals>
</execution>
</executions>
</plugin>
它将创建两个罐子。原始的只有你的内容和超级与所有其他罐子。可以过滤将包含的内容。有关更多示例,请查看:
https://maven.apache.org/plugins/maven-shade-plugin/
https://maven.apache.org/plugins/maven-shade-plugin/examples/includes-excludes.html