2013-02-17 84 views
0

我使用以下内容构建我的应用程序build.xml 当我点击发布/ MyApp.app时,它不会运行!Apple .app(使用Ant的JarBundler构建)不会运行

但是当我做

java -jar release/MyApp.app/Contents/Resources/Java/helloworld.jar 

可执行文件(在Windows)不上来,这意味着helloworld.jar正确建立。 但由于某种原因,app不知道加载它。

<?xml version="1.0" encoding="UTF-8"?> 
<project name="App Builder" default="build_app" basedir="."> 

    <taskdef name="jarbundler" 
      classname="net.sourceforge.jarbundler.JarBundler" /> 

    <target name="build_app"> 
    <jarbundler dir="release" 
      name="MyApp" 
      mainclass="com.test" 
      jar="helloworld.jar" /> 
    </target> 
</project> 

有人知道这里有什么问题吗?

谢谢

+1

当您使用JarBundler时,'.app'包需要一个Java应用程序存根。你添加了吗? http://informagen.com/JarBundler/StubFile.html – Ankit 2013-02-17 04:41:11

+1

另请参阅本[回答](http://stackoverflow.com/a/2929159/230513)。 – trashgod 2013-02-17 05:09:26

回答

0

+1垃圾桶。当测试这个(从你之前的问题),我的应用程序不会启动。这是因为存根使用Java 6而不是Java 7 ......去图。一旦我将我的文件编译到Java 6中,它就可以正常工作。

此外,请确保您在内的所有依赖JAR文件...

我用这个作为我的目标......

<target name="default"> 
    <delete dir="package" failonerror="false"/> 
    <mkdir dir="package"/> 
    <jarbundler dir="package" 
       name="Cars" 
       mainclass="testanimation10.TestAnimation10"> 
     <jarfileset dir="dist"> 
      <include name="**/*.jar" /> 
      <!--<exclude name="**/CVS" />--> 
     </jarfileset> 
    </jarbundler> 

更新

我下载Java Application Bundler来自java.net,这似乎是Apple的捆绑软件的替代品,并遵循here的基本指令,并能够构建一个能够运行二进制文件的软件包在Java 7下运行