【发布时间】:2018-12-14 13:39:17
【问题描述】:
我想生成一个 jar,其中仅包含我的项目中的几个类及其依赖项之一。
schema of what I would like to achieve
我目前设法使用包含我需要的所有类/包的路径的 jardesc 文件来做到这一点,因为依赖项也是我的项目之一。
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<jardesc>
<jar path="C:/temp/myJar-4.0.0.jar"/>
<options buildIfNeeded="true" compress="true" descriptionLocation="/ProjectB/src/main/resources/exportJar.jardesc" exportErrors="true" exportWarnings="true" includeDirectoryEntries="true" overwrite="true" saveDescription="true" storeRefactorings="false" useSourceFolders="false"/>
<storedRefactorings deprecationInfo="true" structuralOnly="false"/>
<selectedProjects/>
<manifest generateManifest="true" manifestLocation="" manifestVersion="1.0" reuseManifest="false" saveManifest="false" usesManifest="true">
<sealing sealJar="false">
<packagesToSeal/>
<packagesToUnSeal/>
</sealing>
</manifest>
<selectedElements exportClassFiles="true" exportJavaFiles="false" exportOutputFolder="false">
<javaElement handleIdentifier="=projectA/src\/main\/java<com.stckvrflw.parsingTools"/>
<javaElement handleIdentifier="=projectA/src\/main\/java<com.stckvrflw.utils{ClassA.java"/>
<javaElement handleIdentifier="=projectB/src\/main\/java<com.test.myPackage{ClassE.java"/>
<javaElement handleIdentifier="=projectB/src\/main\/java<com.test.myPackage{ClassF.java"/>
</selectedElements>
</jardesc>
是否可以在不复制类的情况下使用 Maven 做到这一点?
jar 需要有自己的 artifactId 和版本。
【问题讨论】: