Java系列之:执行Java命令报错没有主清单属性和缺少 JavaFX 运行时组件, 需要使用该组件来运行此应用程序

Java系列之:执行Java命令报错没有主清单属性和缺少 JavaFX 运行时组件, 需要使用该组件来运行此应用程序

一、没有主清单属性

  • ./offset-editor-1.0-SNAPSHOT.jar中没有主清单属性
  • 该错误表明在执行./offset-editor-1.0-SNAPSHOT.jar时,未找到JAR文件的主清单属性。

要解决这个问题,可以通过在构建JAR文件时指定主清单属性来解决。您可以在项目的构建配置文件(如pom.xml或build.gradle)中添加以下代码:

  • 对于Maven项目(pom.xml):
<build>
    <plugins>
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-jar-plugin</artifactId>
            <version>3.2.0</version>
            <configuration>
                <archive>
                    <manifest>
                        <mainClass>com.example.MainClass</mainClass> <!-- 替换为您的主类 -->
                    </manifest>
                </archive>
            </configuration>
        </plugin>
    </plugins>
</build>
  • 对于Gradle项目(build.gradle):
jar {
    
    
    manifest {
    
    
        attributes 'Main-Class': 'com.example.MainClass' // 替换为您的主类
    }
}

确保将"com.example.MainClass"替换为您实际的主类名。然后重新构建JAR文件,确保主清单属性被正确设置并包含在JAR文件中。

重新执行命令时,应该不再出现"没有主清单属性"的错误。

二、缺少 JavaFX 运行时组件

  • 错误: 缺少 JavaFX 运行时组件, 需要使用该组件来运行此应用程序
  • 该错误表明在运行JAR文件时缺少JavaFX运行时组件,而您的应用程序需要使用JavaFX来运行。
  • 要解决这个问题,您可以通过以下步骤之一来添加JavaFX运行时组件:
      1. 安装JavaFX:下载并安装JavaFX运行时组件,您可以从Oracle官网上找到JavaFX的最新版本,并按照它的安装指南进行安装。
      1. 添加JavaFX依赖项:如果您正在使用构建工具(如Maven或Gradle),可以将JavaFX作为项目的依赖项添加到构建配置文件中。

下面是两个常用构建工具的配置示例:

  • 对于Maven项目(pom.xml):
<dependencies>
    <!-- 其他依赖项 -->
    <dependency>
        <groupId>org.openjfx</groupId>
        <artifactId>javafx-controls</artifactId>
        <version>15</version> <!-- 替换为您所需的JavaFX版本 -->
    </dependency>
</dependencies>
  • 对于Gradle项目(build.gradle):
dependencies {
    
    
    // 其他依赖项
    implementation 'org.openjfx:javafx-controls:15' // 替换为您所需的JavaFX版本
}

确保使用适合您项目的JavaFX版本,并根据需要添加其他JavaFX模块。

添加完JavaFX依赖项后,重新构建和运行JAR文件,应该能够成功启动应用程序并避免"缺少JavaFX运行时组件"的错误。

三、安装部署JavaFX和IDEA添加JavaFX的详细步骤

安装部署JavaFX和IDEA添加JavaFX的详细步骤可以参考博主下面这篇技术博客:

猜你喜欢

转载自blog.csdn.net/zhengzaifeidelushang/article/details/132521952