2

jWrapper を使用してjarファイルからexeを構築しようとしています。JWrapper を使用して exe を生成しようとすると、以下に示すようなエラーが発生するのはなぜですか? 助けてください

C:\Documents and Settings\Administrator>java  -jar G:\IMS\jwrapper-00018512673.j
ar  G:\IMS\app.xml
JWrapper 00018512673
JWrapperCompiler started
[Config] Building file is G:\IMS\app.xml
[Updates] Checking for updates...
java.lang.reflect.InvocationTargetException
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
        at java.lang.reflect.Method.invoke(Unknown Source)
        at SecureRunner2.<init>(SecureRunner2.java:464)
        at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)

        at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source)

        at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Sou
rce)
        at java.lang.reflect.Constructor.newInstance(Unknown Source)
        at SecureRunner1.<init>(SecureRunner1.java:422)
        at SecureRunner1.<init>(SecureRunner1.java:227)
        at SecureRunner1.main(SecureRunner1.java:52)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
        at java.lang.reflect.Method.invoke(Unknown Source)
        at jwrapper.launch.JWCompiler.main(JWCompiler.java:99)
Caused by: java.lang.NullPointerException
        at jwrapper.JWrapperCompiler.main(JWrapperCompiler.java:458)
        ... 17 more
[Updates] Update check: 18512673 vs 18473665 (online)

私のapp.xmlファイル

<JWrapper>

    <!-- This tells JWrapper the name of your app bundle -->
    <BundleName>MinimalApp</BundleName>

    <!-- This bit defines a virtual app - your app bundle can have one of these or a bunch of them -->
    <App>

        <!-- The name of the app that launches -->
        <Name>tx</Name>

        <!-- The logo for the app, we automatically scale and convert it to OS specific formats -->


        <!-- The Java main class for your app -->
        <MainClass>ims.init.Selector</MainClass>

        <!-- Any static parameters you want to pass in to your main method -->
        <Param>one</Param>
        <Param>two</Param>

    </App>

    <!-- This tells JWrapper what languages your app uses so JWrapper can let the user choose (if its more than one) -->
    <SupportedLanguages>en,fr</SupportedLanguages>

    <!-- If your app needs to run elevated (as admin) on Windows you can specify that here -->
    <WindowsElevation>None</WindowsElevation>

    <!-- This app installs itself for the current user, you can also install for all users or run as a temporary executable -->
    <InstallType>CurrentUser</InstallType>

    <!-- This is the optional update URL for the app, if the files here get updated the app will auto update-->
    <UpdateURL>http://minimal.jwrapper.com/</UpdateURL>



    <!-- Here's where you specify your Windows 32 bit JRE, note that you can use a 32 bit JRE on 64 bit Windows -->
    <Windows32JRE>../windows/jre1.6.0_16</Windows32JRE>
    <Windows64JRE>../windows/jre1.6.0_16</Windows64JRE>
    <Linux32JRE>../linux/jre1.6.0_16</Linux32JRE>
    <Linux64JRE>../linuxx64/jre1.6.0_16</Linux64JRE>

    <!-- Here's where you can add JAR files or whatever else your app needs to run -->
    <File classpath='yes'>lib/*.jar</File>
    <File classpath='no' path='translations.properties'>resources/translation.properties</File>

</JWrapper>
4

1 に答える 1

1

同じ問題がありました。私の場合、jwrapper.jarに含まれていなかったのはJREからのものでした。ここからWindowsJRE6をダウンロードし(JRE7を含めるのがクールではないところを読んでください)、jre6ディレクトリ全体をjwrapperディレクトリにコピーしました。ここからLinuxについても同じです。Windowsは32ビット、Linuxは32ビットおよび64ビットです。

<!-- Here's where you specify your Windows 32 bit JRE, note that you can use a 32 bit JRE on 64 bit Windows -->
<Windows32JRE>jre6</Windows32JRE>
<Windows64JRE>jre6</Windows64JRE>
<Linux32JRE>jre1.7.0_17_32</Linux32JRE>
<Linux64JRE>jre1.7.0_17_64</Linux64JRE>

私の問題は、現在の作業ディレクトリが.exeの配置と同じではないことです。多分私はこれの解決策も見つけることができます。

于 2013-03-12T11:59:43.307 に答える