나는 기술자를 사용하여 메이븐에서 어셈블리를 짓고 있어요 나는 간단하게 할 노력하고있어 이름을 변경하지 않고 모든 프로젝트 종속성을 이름 바꾸기 다음주요 유물
이- 이 어떤없이 주요 프로젝트 이슈 (JAR)을 포함 이름 바꾸기.
- 모든 프로젝트 종속성을 포함하고 이름을 바꿉니다.
이름 바꾸기 형식 :
${project.artifactId}-${project.version}.lib.${artifact.artifactId}.${artifact.extension}`
현재 내 조립 기술자는 다음과 같습니다
<?xml version="1.0"?>
<assembly xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.2"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.2 http://maven.apache.org/xsd/assembly-1.1.2.xsd">
<id>default</id>
<formats>
<format>tar.gz</format>
<format>zip</format>
</formats>
<dependencySets>
<dependencySet>
<useProjectArtifact>true</useProjectArtifact>
<outputDirectory>/</outputDirectory>
<excludes>
<exclude>*:*</exclude>
</excludes>
</dependencySet>
<dependencySet>
<useProjectArtifact>false</useProjectArtifact>
<outputDirectory>/</outputDirectory>
<outputFileNameMapping>
${project.artifactId}-${project.version}.lib.${artifact.artifactId}.${artifact.extension}
</outputFileNameMapping>
<unpack>false</unpack>
</dependencySet>
</dependencySets>
</assembly>
를 불행하게도, 내가 배포판에 착륙하는 주요 프로젝트 이슈를 얻이 수없는 것 . 내가 도대체 뭘 잘못하고있는 겁니까?
이<!-- Include the project artifact itself. -->
<files>
<file>
<source>${project.build.directory}/${project.build.finalName}.${project.packaging}</source>
<outputDirectory>/</outputDirectory>
</file>
</files>
<!-- Include all dependent libraries. -->
<dependencySets>
<dependencySet>
<useProjectArtifact>false</useProjectArtifact>
<outputDirectory>/</outputDirectory>
<outputFileNameMapping>${project.artifactId}-${project.version}.lib.${artifact.artifactId}.${artifact.extension}</outputFileNameMapping>
<unpack>false</unpack>
</dependencySet>
</dependencySets>
합니다 (<source>
를 들어 위의 것보다 더 정확한 표현이있을 수 있지만, 사용할 수 메이븐 속성의 전체 목록을 찾는 :
''패턴과 관련이 있습니다. 그것을 제거하고 프로젝트 아티펙트가 예상되는 곳에서 끝나는 지 확인하십시오. 그렇다면 어떻게 든 패턴을 수정해야합니다 (대신 ''을 사용하십시오). –
'-X'로 mvn을 실행하면 어셈블리 플러그인 디버그 출력이 각 dependencySet과 일치하는지 알려야한다는 것을 기억합니다. Andrew와 동의합니다.'excludes '대신'includes'를 사용하여 도움이되는지 확인해 보겠습니다. – user944849