Beim Erstellen mit der Datei build.gradle wie unten gezeigt wurde eine JAR-Datei generiert, die Klassendatei war jedoch nicht vorhanden.
build.gradle
apply plugin: 'java'
group = 'com.test.foo'
version = '1.0.0'
sourceCompatibility = '1.8'
targetCompatibility = '1.8'
compileJava {
options.encoding = 'UTF-8'
}
repositories {
mavenCentral()
}
dependencies {
implementation('org.slf4j:slf4j-api:1.7.21')
testCompile 'junit:junit:4.12'
testCompile 'org.hamcrest:hamcrest-library:1.3'
}
Die Ursache für dieses Ereignis war, dass die Java-Datei unter "/ src" vorhanden war.
Ich verwende dieses Mal das Java-Plug-In, aber wenn dieses Plug-In als Standard beibehalten wird, wird die Java-Datei unter / src / main / java
erstellt.
Als ich die Java-Datei unter "/ src / main / java" verschob und erstellte, wurde die Klassendatei erfolgreich in der JAR-Datei generiert.
Dieses Mal gab es einen Hintergrund für das Ändern des Projekts, das ursprünglich mit Ant erstellt wurde, um es mit Gradle zu erstellen, und ich war mir der Verzeichnisstruktur der Quelle nicht sehr bewusst, daher gab es eine solche Bedingung im Java-Plug-In. Wußte nicht.
Übrigens können Sie das zu erstellende Verzeichnis auch mithilfe von "sourceSets" festlegen, wie in [hier] gezeigt (https://docs.gradle.org/current/userguide/java_plugin.html#sec:java_project_layout). Ich werde.
Dieses Mal habe ich die Richtlinie übernommen, die Quelle unter "/ src / main / java" zu verschieben, um das Gefühl der Einheit mit anderen Projekten zu berücksichtigen, aber ich denke, diese Richtlinie ist auch klug.
Wenn die Klassendatei in der mit Gradle generierten JAR-Datei nicht vorhanden ist, überprüfen Sie bitte die Verzeichnisstruktur und das von Gradle zu erstellende Verzeichnis.
Wenn Sie ein Java-Plug-In verwenden, werden die Java-Dateien unter "/ src / main / java" standardmäßig erstellt. Passen Sie daher die Verzeichnisstruktur an diese an oder legen Sie das Verzeichnis fest, auf das beim Erstellen verwiesen wird. Stellen Sie sicher, dass Sie es explizit einstellen.
Recommended Posts