gpt4 book ai didi

java - Gradle 无法正确识别 mainModule

转载 作者:行者123 更新时间:2023-12-01 16:21:27 24 4
gpt4 key购买 nike

我有一个简单的 javaFx 项目。我决定创建一个模块信息来为我的项目需要 javaFX 库。在此之前我的程序运行良好,但现在getClass().getClassLoader().getResource(resPath) 无法从我的资源中获取资源。每次运行应用程序时我都会收到此消息:

假设当前模块没有为主类提供模块。最好按以下格式提供“mainClassName”:“$moduleName/a.b.Main”

这是我的 build.gradle:

plugins {
id 'java-library'
id 'application'
id 'org.openjfx.javafxplugin' version '0.0.8'
}

version '1.0'

repositories {
jcenter()
}

plugins.withType(JavaPlugin).configureEach {
java {
modularity.inferModulePath = true
}
}


tasks.withType(Test).configureEach {
useJUnitPlatform()
}

dependencies {
testImplementation 'org.junit.jupiter:junit-jupiter-api:5.6.1'
testRuntimeOnly 'org.junit.jupiter:junit-jupiter-engine'
}

application {
mainModule = 'liug'
mainClass = 'render.Main'
}

javafx {
version = "13"
modules = ['javafx.controls', 'javafx.fxml']
}

和模块信息:

module moduleInfo {
requires javafx.base;
requires javafx.fxml;
requires javafx.controls;
requires javafx.graphics;


opens controller to javafx.base, javafx.fxml, javafx.controls, javafx.graphics;
opens core to javafx.base, javafx.fxml, javafx.controls, javafx.graphics;
opens popups to javafx.base, javafx.fxml, javafx.controls, javafx.graphics;
opens render to javafx.base, javafx.fxml, javafx.controls, javafx.graphics;
opens stages to javafx.base, javafx.fxml, javafx.controls, javafx.graphics;
opens view to javafx.base, javafx.fxml, javafx.controls, javafx.graphics;

exports controller;
exports core;
exports popups;
exports render;
exports stages;
exports view;
exports core.buildings;
}

here is my projects structure

有人可以说我做错了什么吗?

最佳答案

问题出在项目结构中,就像 gradle 版本中所说的那样。我在 gradle-wrapper.properties 中编写了以下代码段: distributionUrl=https\://services.gradle.org/distributions/gradle-5.0-all.zip 并使用 fxml 资源更改了包的名称( how it looks like)。我还更改了用于获取 FXML 文件的资源的路径。这就是现在的样子:

URL url = getClass().getResource("MaiMenu.fxml");
Parent root = FXMLLoader.load(url);
stage.setScene(new Scene(root));
stage.show();

This tutorial对我帮助很大。我仍然有一些问题,但我认为它们与这个问题无关,所以我将其关闭。

关于java - Gradle 无法正确识别 mainModule,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62263254/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com