1
我想創建一個zip文件,其中包含我的Java項目的其他內容,.NET x64 EXE +其清單+ .NET DLL依賴項。它看起來像maven程序集插件會破壞EXE和DLL。事實上,如果我嘗試執行一次提取的文件,我得到「這個應用程序無法在這臺PC上運行」(無效的x64 Windows應用程序),但如果我複製原始文件,他們正常工作。Maven Assembly插件破壞exe文件dll
我試圖谷歌解決方案沒有成功。我在maven文件中丟失了什麼?
插件聲明中pom.xml
是:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-assembly-plugin</artifactId>
<configuration>
<descriptors>
<descriptor>src/main/assembly/windows.xml</descriptor>
</descriptors>
</configuration>
<executions>
<execution>
<id>assembly</id>
<phase>package</phase>
<goals>
<goal>single</goal>
</goals>
<configuration>
<appendAssemblyId>false</appendAssemblyId>
<finalName>${bundle.name}</finalName>
</configuration>
</execution>
</executions>
</plugin>
而windows.xml
內容是:
<?xml version="1.0"?>
<assembly
xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.3"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.3 http://maven.apache.org/xsd/assembly-1.1.3.xsd">
<id>windows</id>
<formats>
<format>zip</format>
</formats>
<files>
<file>
<source>${launcher.dir}/GetMachineId.exe</source>
<outputDirectory>bin/utils</outputDirectory>
<destName>GetMachineId.exe</destName>
</file>
<file>
<source>${launcher.dir}/GetMachineId.exe.config</source>
<outputDirectory>bin/utils</outputDirectory>
<destName>GetMachineId.exe.config</destName>
</file>
<file>
<source>${launcher.dir}/MessagingToolkit.QRCode.dll</source>
<outputDirectory>bin/utils</outputDirectory>
<destName>MessagingToolkit.QRCode.dll</destName>
</file>
</files>
</assembly>
你能分享整個異常嗎? – user3272686
從事件查看器中,Windows日誌>應用程序:由於與64位版本的Windows不兼容,「程序或功能」\ ?? \