【问题标题】:Failed to bundle Java application 1.8 for Mac无法为 Mac 捆绑 Java 应用程序 1.8
【发布时间】:2015-03-28 05:46:52
【问题描述】:

我正在尝试将我的 Java 应用程序导出到 Mac。该应用程序基于 Compiler Complience Level 1.7。我尝试了不同的方法来捆绑应用程序。

1) 日食。我可以用来在 Eclipse 上导出的最新 JVM 版本是 1.6*。

2) 马文。看起来在 Maven 上也存在同样的问题。当我使用关注command 时,它显示了与版本相关的错误。

系统:

~Jack$ java -version
java version "1.8.0_25"
Java(TM) SE Runtime Environment (build 1.8.0_25-b17)
Java HotSpot(TM) 64-Bit Server VM (build 25.25-b02, mixed mode).

Maven 方法

Maven 命令

mvn package osxappbundle:bundle -DmainClass=com.example.Main

Maven 返回的错误

type javax.swing.JList does not take parameters

cannot access org.json.JSONArray
   bad class file: org/json/JSONArray.class(org/json:JSONArray.class)
   class file has wrong version 52.0, should be 50.0

*我知道这些错误与 Java 的版本有关。我的编译器是1.7的,但是当我使用maven打包时,会出现上面的错误。

Eclipse 方法

Version: Luna Service Release 1a (4.4.1)

我该怎么办?我可以找到其他替代品,例如 JarBundler,但没有用。

【问题讨论】:

  • 使用支持 Java 1.7 及更高版本的更新版本的 eclipse。
  • @ElliottFrisch 我的eclipse版本是4.4.1

标签: java eclipse macos maven


【解决方案1】:

OSX 上有两种不同类型的 Java 应用程序包。较旧的类型适用于 Apple Java 版本(最高 Java 6),而较新的类型适用于 Oracle Java(7 及更高版本)。 maven osxappbundle 插件只支持前者,这就是为什么它不会使用Java 6以后的原因。我想你使用的eclipse工具是一样的。

This alternative Maven plugin 声称可以使用 Oracle Java 版本。

【讨论】:

    【解决方案2】:

    在 OS X 中创建 Java 应用程序包的新推荐方法是使用 Oracle 的 appbundler。这是基于 Ant 的。

    还有一个fork,它提供了一些额外的功能。

    【讨论】:

      猜你喜欢
      • 2012-05-29
      • 2015-05-18
      • 2014-10-08
      • 2014-12-12
      • 1970-01-01
      • 1970-01-01
      • 2012-08-19
      • 2013-11-17
      • 1970-01-01
      相关资源
      最近更新 更多