gpt4 book ai didi

java - maven mac应用程序包插件找不到自定义Info.plist

转载 作者:行者123 更新时间:2023-12-02 06:32:43 25 4
gpt4 key购买 nike

我正在使用 maven os x 应用程序捆绑插件,以便我可以创建 java 启动器的 mac 可执行版本。我必须将其作为两个步骤的一部分来执行,以免给我的用户 Gatekeeper 带来麻烦...

我必须配置一个自定义 plist 来正确设置 java 工作目录(当您单击 jar 时,代码运行良好,当您单击 .app 时,代码会崩溃并退出代码 1)

该插件允许您创建自己的 plist 并指示它在 pom 中的位置:

<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>osxappbundle-maven-plugin</artifactId>
<version>1.0-alpha-1</version>
<configuration>
<mainClass>com.helion3.Launcher</mainClass>
<dictionaryFile>${basedir}/src/main/resources/Info.plist</dictionaryFile>
</configuration>
<executions>
<execution>
<phase>package</phase>
<goals>
<goal>bundle</goal>
</goals>
</execution>
</executions>
</plugin>

该文件存在于该位置。当我运行 mvn package 时,它现在失败了:

org.apache.maven.lifecycle.LifecycleExecutionException:无法在项目启动时执行目标 org.codehaus.mojo:osxappbundle-maven-plugin:1.0-alpha-1:bundle(默认):找不到资源对于模板/Users/myacct/Documents/workspace/MyProgram/src/main/resources/Info.plist

当我运行 vi/Users/myacct/Documents/workspace/MyProgram/src/main/resources/Info.plist 时,文件可以正确打开。

我的 plist 本身应该是有效的,因为我复制了最初生成的 plist,添加了一个工作目录键,并用插件的占位符替换了一些值。

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist SYSTEM "file://localhost/System/Library/DTDs/PropertyList.dtd">
<plist version="0.9">
<dict>
<key>CFBundleName</key>
<string>${bundleName}</string>
<key>CFBundleVersion</key>
<string>${describe}</string>
<key>CFBundleAllowMixedLocalizations</key>
<string>true</string>
<key>CFBundleExecutable</key>
<string>JavaApplicationStub</string>
<key>CFBundleDevelopmentRegion</key>
<string>English</string>
<key>CFBundlePackageType</key>
<string>APPL</string>
<key>CFBundleSignature</key>
<string>????</string>
<key>CFBundleInfoDictionaryVersion</key>
<string>6.0</string>
<key>CFBundleIconFile</key>
<string>GenericJavaApp.icns</string>
<key>Java</key>
<dict>
<key>WorkingDirectory</key>
<string>$APP_PACKAGE/Contents/Resources</string>
<key>MainClass</key>
<string>${mainClass}</string>
<key>JVMVersion</key>
<string>1.4+</string>
<key>ClassPath</key>
${classpath}
</dict>
</dict>
</plist>

最佳答案

如果有人从搜索引擎来到这里,这是我的解决方案。

切换到最新版本的插件:

<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>osxappbundle-maven-plugin</artifactId>
<version>1.0-alpha-2</version>
....
</plugin>

我使用 alpha-1 并得到了相同的错误。

关于java - maven mac应用程序包插件找不到自定义Info.plist,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19935640/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com