3
我的maven版本在maven-jar-plugin上停滯不前。它需要10-15秒的時間來建立一個正常大小的jar文件。使用jar工具或使用java.util.jar類直接創建jar文件不是問題。Ubuntu上maven jar插件性能不佳
檢測到isUp2Date爲false並列出jar條目之間的構建停頓。
[DEBUG] Configuring mojo 'org.apache.maven.plugins:maven-jar-plugin:2.3.2:jar' with basic configurator -->
[DEBUG] (f) classesDirectory = /home/.../repos/.../zz-test-zip/target/classes
[DEBUG] (f) defaultManifestFile = /home/.../repos/.../zz-test-zip/target/classes/META-INF/MANIFEST.MF
[DEBUG] (f) finalName = zz-test-zip-1.0.0-SNAPSHOT
[DEBUG] (f) forceCreation = false
[DEBUG] (f) outputDirectory = /home/.../repos/.../zz-test-zip/target
[DEBUG] (f) project = MavenProject: ...
[DEBUG] (f) useDefaultManifestFile = false
[DEBUG] -- end configuration --
[DEBUG] isUp2date: false (Destination /home/.../repos/.../zz-test-zip/target/zz-test-zip-1.0.0-SNAPSHOT.jar not found.)
** Here the build stalls **
[INFO] Building jar: /home/.../repos/../zz-test-zip/target/zz-test-zip-1.0.0-SNAPSHOT.jar
[DEBUG] adding directory META-INF/
[DEBUG] adding entry META-INF/MANIFEST.MF
什麼可能導致maven-jar-plugin在那裏暫停?我在Ubuntu 12.04和Oracle JDK 1.7.0_45上。 Maven的版本是3.0.5「手動」安裝,而不是從Ubuntu的回購。我還可以補充一點,當我使用-o
開關在離線模式下運行時,行爲是相同的。
UPDATE
我跑mvnDebug和連接過程偏食,當我暫停時,它是「暫停」主線程,它總是顯示了這個調用堆棧:
UnixNativeDispatcher.getgrgid(int) line: not available [native method]
UnixUserPrincipals.fromGid(int) line: 129
UnixFileAttributes.group() line: 187
NativeMethodAccessorImpl.invoke0(Method, Object, Object[]) line: not available [native method]
NativeMethodAccessorImpl.invoke(Object, Object[]) line: 57
DelegatingMethodAccessorImpl.invoke(Object, Object[]) line: 43
Method.invoke(Object, Object...) line: 606
Java7Reflector.invoke(Method, Object, Object...) line: 151
Java7Reflector.getOwnerGroupName(Object) line: 133
Java7FileAttributes.<init>(File) line: 68
PlexusIoResourceAttributeUtils.getFileAttributesByPathJava7(File, boolean) line: 330
PlexusIoResourceAttributeUtils.getFileAttributesByPath(File, Logger, int, boolean, boolean) line: 224
PlexusIoResourceAttributeUtils.getFileAttributesByPath(File) line: 195
PlexusIoFileResourceCollection.getResources() line: 177
AbstractArchiver$1.hasNext() line: 433
JarArchiver(AbstractZipArchiver).createArchiveMain() line: 233
JarArchiver(AbstractZipArchiver).execute() line: 211
你可以顯示該構建的pom文件嗎? – khmarbaise
maven版本?這是maven從apache.org或從Ubuntu的回購? – MariuszS
@khmarbaise恐怕不是,但在pom文件中沒有什麼特別之處。 –