我已经在我的计算机上安装了Launch4j和JDK,我正在尝试将jar文件转换为exe。启动Launch4j时,出现以下错误:
此应用程序需要Java运行时环境1.6.0
我怎样才能解决这个问题?查找已安装JRE/JDK的Launch4j搜索策略是什么?
JDK版本:
java -version
输出:
java版本“14”2020-03-17 java(TM)SE运行时环境(build 14 36-1461)java热点(TM)64位服务器虚拟机(build 14 36-1461,混合模式,共享)
我在变量path和JAVA_HOME中都有JDK path。我试图卸载JDK并安装JRE,但我首先需要编译*。java到*。使用javac命令初始化文件。所以在本例中,我有不同版本的JDK和JRE。
官方文件说:
Launch4j要求每个输出可执行文件都有一个xml配置文件。
因此,我可以使用jre标记和jdkPreference属性来指定配置文件中公共jre或私有JDK运行时的首选项。但我如何才能将其添加到构建中。xml文件?
建筑xml:
<project name="launch4j" default="compile" basedir=".">
<property name="src" location="src" />
<property name="lib" location="lib" />
<property name="build" location="build" />
<property name="jar" location="./${ant.project.name}.jar" />
<property name="launch4j.dir" location="." />
<property name="maven" location="maven" />
<path id="dist.classpath">
<pathelement path="${build}" />
<fileset dir="${lib}">
<include name="**/*.jar" />
</fileset>
</path>
<target name="init">
<tstamp />
<mkdir dir="${build}" />
</target>
<target name="compile" depends="init" description="compile the source">
<javac srcdir="${src}" destdir="${build}" classpathref="dist.classpath" source="1.6" debug="on" includeantruntime="false" />
<copy todir="${build}/images">
<fileset dir="${src}/images">
<include name="**/*" />
</fileset>
</copy>
<copy todir="${build}">
<fileset dir="${src}">
<include name="**/*.properties" />
</fileset>
</copy>
</target>
<target name="jar" depends="compile" description="create jar">
<fileset dir="${lib}" id="lib.dist.fileset">
<include name="**/*.jar" />
</fileset>
<pathconvert pathsep=" " property="dist.classpath" refid="lib.dist.fileset">
<map from="${lib}" to="./lib" />
</pathconvert>
<!-- Put everything in ${build} into a jar file -->
<jar jarfile="${jar}">
<fileset dir="${build}" excludes="**/messages_es.properties" />
<manifest>
<attribute name="Main-Class" value="net.sf.launch4j.Main" />
<attribute name="Class-Path" value=". ${dist.classpath}" />
</manifest>
</jar>
</target>
<target name="demo" depends="jar" description="build the demos">
<ant dir="./demo/ConsoleApp" inheritAll="false" />
<ant dir="./demo/SimpleApp" inheritAll="false" />
</target>
<target name="clean" description="clean up">
<delete dir="${build}" />
<delete file="${jar}" />
<ant dir="./demo/ConsoleApp" target="clean" inheritAll="false" />
<ant dir="./demo/SimpleApp" target="clean" inheritAll="false" />
</target>
<target name="switch-to-maven" description="switch project to maven">
<copy todir="." overwrite="true">
<fileset dir="${maven}">
<include name="**/*" />
</fileset>
</copy>
<delete dir="${lib}" />
<mkdir dir="./target" />
</target>
</project>
谢谢
而不是启动launch4j。exe作为windows可执行文件,您可以启动4。使用jdk创建jar。因此,标记启动4J。在文件资源管理器中,右键单击,选择“打开方式”,并引用已安装的jdk,例如open jdk platform binary
Launch4j似乎受到新java版本的限制。。。在上一次更新中,他们显示了有关支持的jvm的详细信息,最后一次更新是1.8.9,还有一张关于java 9及更高版本遵从性的罚单。。。更改日志和票据启动4J
错误: 回溯(最近一次调用):文件“./video_qt.py”,第8行,从PyQt5导入QtWidgets,QtCore importerror:/usr/lib/x86_64-linux-gnu/libqt5gui.so.5:找到版本`qt_5'not>(由/usr/local/lib/python3.5/dist-packages/PyQt5/QtWidgets.so所需) 但它就在那里:
问题内容: 我尝试使用启动程序,并收到一条错误消息,提示未找到命令“ javaw”。我检查了bin文件夹,但未找到javaw。可能是什么原因? 问题答案: 该实用程序在Linux上不可用或不需要。只需使用。 说明: 在Windows之间的区别,并是,推出一个新的Windows控制台,没有。 在Linux上,该命令不会启动新的控制台,因此不需要变体。
问题内容: 我试图用cmake建立一个项目。这个项目正在使用Java等。问题是在代码处 我收到以下错误: 虽然 输出 怎么会?该错误的原因是什么? 问题答案: 如果您使用的是Linux操作系统,则必须将Java home设置为export
Java在k:\test\jre7\bin\Java.exe中,我的jar是k:\test\pllsolver-0.2alpha.jar 此外,我还不知道这是否会成为一个问题,但可执行文件和数据/需要在同一个目录中。我计划稍后做更好的pathing,但我对Windows ENV变量没有一个清晰的理解。
问题内容: 我正在开发一个slackbot。导入slackclient后,我得到了。 我尝试了所有选项并遵循了本文中显示的建议-Python找不到已安装的模块(’slackclient’)。根据这些建议,我安装了Slack,但在导入WebClient时收到以下错误。 我检查了看起来不错的松弛版本 有什么建议我可能做错了什么? 问题答案: 使用slackclient版本2 slackclient =
问题内容: 我通过运行以下命令在centos 7上安装了docker, 注意:helloworld正常运行,没有问题。 但是,当我尝试运行docker-compose(docker- compose.yml存在且有效)时,它仅在Centos上给我错误(Windows版本对于docker-compose文件运行良好) 问题答案: 您还需要安装Docker Compose。请参阅手册。这是您需要执行的