Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/368.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 应用程序需要JRE版本_Java_Version_Updates_Launch4j - Fatal编程技术网

Java 应用程序需要JRE版本

Java 应用程序需要JRE版本,java,version,updates,launch4j,Java,Version,Updates,Launch4j,当我尝试运行我的应用程序(编译后为.exe)时,将Java更新为1.8.0\u 101后,显示信息此应用程序需要Java运行时环境1.8.0\u 40,且应用程序未运行。我使用了launch4j 有人有同样的问题吗?知道为什么在更新Java之后会显示它吗 pom.xml <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-pl

当我尝试运行我的应用程序(编译后为
.exe
)时,将
Java
更新为
1.8.0\u 101
后,显示信息
此应用程序需要Java运行时环境1.8.0\u 40
,且应用程序未运行。我使用了
launch4j

有人有同样的问题吗?知道为什么在更新
Java
之后会显示它吗

pom.xml

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-compiler-plugin</artifactId>
    <version>3.0</version>
    <configuration>
        <source>1.8</source>
        <target>1.8</target>
        <encoding>${project.build.sourceEncoding}</encoding>
        <executable>${env.JAVA_HOME}</executable>
        <compilerArguments>
            <bootclasspath>${env.JAVA_HOME}/jre/lib/rt.jar:${env.JAVA_HOME}/jre/lib/jce.jar</bootclasspath>
        </compilerArguments>
    </configuration>
</plugin>
编辑


minVersion
更改为
1.8.0.\u 101
后,它可以工作,但我对此不满意,因为当
Java
的下一个版本(例如
1.8.0\u 102
)到来时,我也必须更改它

当jre版本号超过100时,较旧的launch4j版本中似乎存在漏洞。因此,您必须使用launch4j版本3.9,它应该在launch4j插件的版本1.7.11中。

您使用了什么工具来生成
.exe
?使用
Intelij IDEA
编译我不认为IDEA作为IDE可以生成
.exe
-文件(至少我没有发现任何迹象表明它可以生成)。您可能有某种java exe包装或其他东西……我使用了maven安装,版本
org.apache.maven.plugins:maven安装插件:2.3.1
。有可能是maven版本的问题吗?不,这也不是问题所在(安装插件用于将工件部署到远程存储库)。但是现在我们知道你在使用maven了,剩下的问题是什么插件产生了exe。appassembler、launch4j或其他不同的东西。一旦我们得到答案,您应该从pom.xml发布相关部分。
 <plugin>
        <groupId>com.akathist.maven.plugins.launch4j</groupId>
        <artifactId>launch4j-maven-plugin</artifactId>
        <version>1.5.2</version>
        <executions>
            <execution>
                <id>l4j-gui</id>
                <phase>package</phase>
                <goals>
                    <goal>launch4j</goal>
                </goals>
                <configuration>
                    <headerType>gui</headerType>
                    <outfile>target/App.exe</outfile>
                    <jar>target/App.jar</jar>
                    <priority>high</priority>
                    <errTitle>App</errTitle>
                    <classPath>
                        <mainClass>com.app.Main</mainClass>
                    </classPath>
                    <jre>
                        <minVersion>1.8.0_40</minVersion>
                    </jre>
                    <versionInfo>
                        <productName>App</productName>
                        <internalName>app</internalName>
                        <originalFilename>App.exe</originalFilename>                                    
                    </versionInfo>
                </configuration>
            </execution>
        </executions>
  </plugin>