我正在使用maven shade插件创建一个胖罐子,其中也包括一些弹性城堡罐子。但这造成了问题,因为Bouncy Castle的未签名版本。
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-shade-plugin</artifactId>
<version>2.4.3</version>
<executions>
<execution>
<phase>package</phase>
<goals>
<goal>shade</goal>
</goals>
<configuration>
<artifactSet>
<excludes>
<exclude>org.bouncycastle:*:*:*</exclude>
</excludes>
</artifactSet>
<finalName>Relay-S3-Monitor-jar-with-dependencies</finalName>
<filters>
<filter>
<artifact>*:*</artifact>
<excludes>
<exclude>META-INF/*.SF</exclude>
<exclude>META-INF/*.DSA</exclude>
<exclude>META-INF/*.RSA</exclude>
</excludes>
</filter>
</filters>
<transformers>
<transformer implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer">
<mainClass>at.seresunit.lecturemanager_connector.App</mainClass>
</transformer>
<transformer implementation="org.apache.maven.plugins.shade.resource.AppendingTransformer">
<resource>META-INF/spring.handlers</resource>
</transformer>
<transformer implementation="org.apache.maven.plugins.shade.resource.AppendingTransformer">
<resource>META-INF/spring.schemas</resource>
</transformer>
<transformer implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer">
<manifestEntries>
<Main-Class>com.pb.relay.s3.CamelBoot</Main-Class>
<Class-Path>. bouncycastle_libs/bcpg-jdk15on-1.55.jar bouncycastle_libs/bcprov-jdk15on-1.55.jar bouncycastle_libs/bcprov-jdk16-1.45.jar</Class-Path>
</manifestEntries>
</transformer>
</transformers>
</configuration>
</execution>
</executions>
</plugin
使用dependency插件,您可以调用dependency:copy
将依赖项复制到文件夹
https://maven.apache.org/plugins/maven-dependency-plugin/copy-mojo.html
最近,我发现了以下问题: 当我为我的项目设置依赖项管理时,我有一个child-pom,它使用具有依赖项的插件,我想要与在我的依赖项管理中声明的依赖项同步。 在根pom中,我在依赖项管理中声明: 在子pom中,我有一个插件需要gwt-user: 但是,如果我移除gwt-maven-plugin中使用的依赖版本,编译就会失败。 是不是还有别的办法可以实现呢? PS:在maven和maven插件中有一个
我正在使用Gradle插件0.9和Android Studio 0.5.4。 我有一个Android库项目,只有一个依赖项。jar位于/libs文件夹中。当我在Proguard激活的情况下运行AssemblerRelease任务时,生成的AAR具有以下结构: 我的图书馆 问题是myJar。jar类被合并到类中。jar by Proguard(当我在没有Proguard的情况下运行时,它不会发生)。
我有一个gradle构建,它依赖于一个在buildSrc目录中编译的插件(MyTools)。这部分工作正常。我遇到的问题是试图从外部jar导入一个类以在myTools插件的源代码中使用。 我的目录结构如下: buildsrc ----build.gradle -----build.gradle -----settings.gradle -------libs -------Yuicompresso
我正试图让maven下载所有的依赖项(编译、测试、插件等)。)这样我就可以避免让我们的dockerized构建浪费不必要的时间一遍又一遍地下载它们。 我们已经对maven build进行了dockerized,这样我们就可以从jenkins运行它,而无需在jenkins机器上安装大量构建特定的依赖项(Java、redis、maven依赖项等)。我们的构建依赖于增量docker构建,它只执行实际需要
我已经创建了一个包,通过导入其他程序员的代码来供他们使用。我的程序使用其他jar文件进行XML解析,我不想让其他人担心依赖关系,什么是确保我的jar文件总是获得它的依赖关系的最佳方法? 是否应在原始JAR中包含依赖项? 有其他方法吗?
当使用一些第三方库时,我将依赖项添加到模块的build.gradle文件中。 或者我添加一个插件 有时,库需要向应用的build.gradle文件添加依赖项。 这些依赖项和插件之间有什么区别 为什么不能在一个构建中设置它们。格雷德尔档案? 所有的建议都很感谢,我在搜索这方面的信息时遇到了困难