在 Eclipse 中,如何创建项目的 .exe 文件

问题描述 投票:0回答:1

在这个问题上已经坚持了3天了。 我的应用程序使用 JavaFX,当我按下“播放”按钮时,它运行得非常好。 我想创建一个可运行的 .exe 文件。这是我项目的 pom.xml:

<project xmlns="http://maven.apache.org/POM/4.0.0"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>

    <groupId>com.schematix</groupId>
    <artifactId>schematix</artifactId>
    <version>1.0.0</version>
    <packaging>jar</packaging>
    <description>Building electricity calculator</description>
    <url>http://maven.apache.org</url>

    <properties>
        <runtime.version>7.0.0.Final</runtime.version>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    </properties>

    <dependencies>
        <dependency>
            <groupId>ch.qos.logback</groupId>
            <artifactId>logback-core</artifactId>
            <version>1.2.3</version>
        </dependency>
        <dependency>
            <groupId>ch.qos.logback</groupId>
            <artifactId>logback-classic</artifactId>
            <version>1.2.3</version>
        </dependency>
        <dependency>
            <groupId>org.slf4j</groupId>
            <artifactId>slf4j-api</artifactId>
            <version>1.7.30</version>
        </dependency>
        <dependency>
            <groupId>com.fasterxml.jackson.core</groupId>
            <artifactId>jackson-core</artifactId>
            <version>2.12.2</version>
        </dependency>
        <dependency>
            <groupId>com.fasterxml.jackson.core</groupId>
            <artifactId>jackson-databind</artifactId>
            <version>2.12.2</version>
        </dependency>
        <dependency>
            <groupId>org.apache.poi</groupId>
            <artifactId>poi</artifactId>
            <version>3.9</version>
        </dependency>
        <dependency>
            <groupId>org.apache.poi</groupId>
            <artifactId>poi-ooxml</artifactId>
            <version>3.9</version>
        </dependency>
        <dependency>
            <groupId>org.openjfx</groupId>
            <artifactId>javafx-controls</artifactId>
            <version>20.0.1</version>
        </dependency>

    </dependencies>

    <build>
        <sourceDirectory>src</sourceDirectory>

        <resources>
            <resource>
                <directory>src/resources</directory>
            </resource>
        </resources>

        <plugins>
            <plugin>
                <artifactId>maven-compiler-plugin</artifactId>
                <version>3.7.0</version>
                <configuration>
                    <source>1.8</source>
                    <target>1.8</target>
                </configuration>
            </plugin>
        </plugins>
    </build>
</project>

我将编译器合规级别设置为 17。

我创建了一个如下的 JAR 文件:在 Project Explorer 中右键单击我的项目,选择 Export,选择 Runnable JAR file,单击 Next,选择 将所需的库提取到生成的 JAR 并选择正确的启动配置(主要 - schematix)和导出目的地。

然后我打开 Launch4j 程序,并在 Basic 选项卡中添加输出 .exe 文件的目标,选择 Jar 文件,选择 .ico 文件作为图标。我还转到 JRE 选项卡并将最小 JRE 版本设置为 17。这就是我所做的全部。然后我按下“构建包装器”按钮,它生成了 .exe。当我尝试使用 Launch4j 中的“测试包装器”按钮运行该 .exe 时,出现以下错误:

错误:缺少 JavaFX 运行时组件,需要运行 这个应用程序

java eclipse javafx launch4j
1个回答
0
投票

如果您不熟悉 Java 模块,几乎肯定会遇到错误:“运行时组件丢失”。它是为 Java SE 以来的所有非模块化 JavaFX 项目生成的。但是,可以通过使用命令行参数添加 JavaFX 模块来纠正它。如果您觉得有帮助,请投票或采纳我的回答

© www.soinside.com 2019 - 2024. All rights reserved.