gpt4 book ai didi

java - 如何通过gradle运行多个Java类?

转载 作者:行者123 更新时间:2023-12-03 04:10:22 25 4
gpt4 key购买 nike

我正在尝试使用gradle同时运行一个主类和另一个java类(服务器),但是由于某些原因,当我尝试运行Server任务时,我一直收到此错误。

Error: Could not find or load main class task ':Server'
Caused by: java.lang.ClassNotFoundException: task ':Server'

这是我的gradle.build
plugins {
id 'application'
id 'java'
id 'org.openjfx.javafxplugin' version '0.0.8'
}
javafx {
version = "11.0.2"
modules = [ 'javafx.controls', 'javafx.fxml' ]
}
version '1.0-SNAPSHOT'
repositories {
mavenCentral()
}
sourceSets.main.java.srcDirs = ['src']
sourceSets {
main {
resources {
srcDirs = ["src"]
includes = ["**/*.css", "images/*png", "files/*.csv", "**/*.csv"]
}
}
}
dependencies {
compile group: 'commons-validator', name: 'commons-validator', version: '1.6'
compile group: 'com.google.code.gson', name: 'gson', version: '2.7'
}
apply plugin: 'java'
apply plugin: 'application'
applicationDefaultJvmArgs = ["-Djavafx.embed.singleThread=true"]
task(Server, dependsOn: 'classes', type: JavaExec) {
description = "Run the Server class"
classpath = sourceSets.main.runtimeClasspath
main = Server
}
defaultTasks 'Server'
mainClassName = 'Main'

最佳答案

main = Server意味着Server任务的入口点是默认包中的一个名为Server的Java类,在磁盘上具有匹配的Server.class

仅当存在要编译的src/Server.java文件时,Gradle才会使用您的设置生成此类文件。

那真的是你的意思吗?

否则,main的值应类似于your.company.package.MainClass

另外的线

apply plugin: 'java'
apply plugin: 'application'

不需要,因为这两个插件已经应用在顶部的 plugins块中。

关于java - 如何通过gradle运行多个Java类?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60858609/

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