Erstellen eines Java-Projekts mit Gradle

Was ist ein Java-Plug-In?

Um ein Java-Projekt mit Gradle zu erstellen, benötigen Sie ein Java-Plug-In. Um das Plug-In anzuwenden, schreiben Sie Folgendes in build.gradle.

build.gradle


apply plugin: 'java'

Das Java-Plug-In enthält vier Elemente: "Task", "Konvention", "Eigenschaft" und "Quellensatz". Es ist eine verpackte Komponente. Wenn Sie sich mit den einzelnen Elementen vertraut machen, werden Sie verstehen, wie das Erstellen mit Java-Plug-Ins funktioniert.

Quellensatz

Ein Quellensatz ist ein Konzept, das ** Objekte gruppiert, die gleichzeitig kompiliert werden sollen **. Standardmäßig für Java-Plugins

--main: Ein Quellensatz von Produktionscode und Produktionsressourcen --test: Ein Quellensatz aus Testcode und Testressourcen

Wir bieten die beiden oben genannten Quellensätze an.

Der Quellcode verfügt über die folgenden Funktionen.

Aufgabe

Wenn Sie in Gradle ein Plug-In hinzufügen, wird die zum Erstellen erforderliche Arbeit gleichzeitig als Aufgabe hinzugefügt. Die folgenden Aufgaben werden auch dem Java-Plug-In hinzugefügt.

Aufgabe Erläuterung
compileJava Kompilieren Sie den Produktionscode. Das Ziel ist Java des Quellensatzes main.Die Erweiterung, die in dem von der Eigenschaft srcDirs angegebenen Verzeichnis gespeichert ist.Java-Datei.
processResources Kopieren Sie die Produktionscode-Ressourcen in den Klassenpfad. Das Ziel sind Ressourcen des Quellensatzes main.Die Erweiterung, die in dem durch die Eigenschaft srcDirs angegebenen Verzeichnis gespeichert ist.Andere Dateien als Java.
classes Führen Sie die Aufgaben compileJava und processResources aus.
compileTestJava Verhält sich wie die compileJava-Task für den Quellensatztest.
processTestResources Verhält sich wie die processResources-Task für den Quellensatztest.
testClasses Führen Sie die Aufgaben compileTestJava und processTestResources aus.
jar Generieren Sie eine JAR-Datei. Das Standardarchivziel ist die Ausgabeeigenschaft des Hauptquellensatzes.(Ausgabe der Task compileJava und processResources)
javadoc Javadoc des Hauptquellensatzes ausgeben.
test test Führt die im Quellensatz enthaltenen Tests aus. Standardmäßig wird das Testziel automatisch aus der Ausgabe der Aufgabe testClasses extrahiert.
uploadArchives Artefakt(Baue Artefakte)Laden Sie das Archiv von hoch.
clean Löschen Sie die Build-Ausgabe. Standardmäßig wird das Build-Verzeichnis gelöscht.
clean <TaskName> Angegebene Aufgabe<TaskName>Löschen Sie nur die Ausgabe von.
assemble Generieren Sie je nach Projektinhalt geeignete Artefakte, ohne Tests auszuführen. Das Java-Plug-In verwendet standardmäßig die JAR-Task.
check Überprüfen Sie das Projekt. Das Java-Plug-In verwendet standardmäßig die Testaufgabe.
build Erstellen Sie das Projekt. Führen Sie die Prüfung durch und stellen Sie Aufgaben zusammen.
buildNeeded Erstellen Sie nicht nur das zu erstellende Projekt, sondern auch das Projekt, für das Abhängigkeiten festgelegt wurden.
buildDependents Erstellen, einschließlich Projekte, die vom zu erstellenden Projekt abhängen.

Quellensatz hinzufügen und Aufgaben automatisch hinzufügen

Im Java-Plug-In, wenn Sie einen Quellensatz hinzufügen Die folgenden Aufgaben werden automatisch für jeden Quellensatz hinzugefügt.

Bedingungen

Die Konvention lautet "Platzieren Sie in einem Java-Projekt Java-Dateien im Verzeichnis src / main / java". Es ist so ein Versprechen. Java-Plug-Ins haben die folgenden Konventionen.

--Produktionscode-Quelldatei → Legen Sie es im Verzeichnis src / main / java ab

Eigentum

Eigenschaften werden festgelegt, um das Eingabe- / Ausgabeziel von Aufgaben und das Verzeichnis von Konventionen zu steuern.

Java-Plug-In-Eigenschaften (häufig)

Vom Projektobjekt bereitgestellte Eigenschaften.

Eigentum Erläuterung Standard
testResultDir Ausgabeziel der XML-Datei des Testergebnisses build/test-results
testReportDir Testbericht(HTML)Ausgabeziel build/reports/tests
libsDir Bibliothek(JAR-Datei)Ausgabeziel build/libs
distDir Verteilung(Andere Archive als JAR-Dateien)Ausgabeziel build/distributions
docsDir Dokumentausgabeziel wie Javadoc build/docs
sourceSets Projektquellensatz Hauptcontainer für Testquellensätze
sourceCompatibility Java-Version beim Kompilieren der Java-Quelle JVM-Version der Build-Skript-Ausführungsumgebung
targetCompatibility Java-Version für die Klassengenerierung zur Kompilierungszeit Wert von sourceCompatibility
archivesBaseName Basisname von Archivdateien wie JAR project.Der Wert der Eigenschaft name(Der Standardwert ist der Stammverzeichnisname des Projekts)
manifest Manifest, das in alle JAR-Dateien aufgenommen werden soll Keiner

Zugriff auf Eigenschaften in Build-Skripten


println project.docsDir
println docsDir

Java-Plug-In-Eigenschaften (bereitgestellt vom Quellensatz)

Eigenschaften, die von der sourceSets-Eigenschaft des Project-Objekts bereitgestellt werden.

Eigentum Erläuterung Standard
name Name des Quellensatzes. Muss innerhalb des Projekts eindeutig sein Keiner
output Ausgang des Quellensets output.classDir、output.Wert der resourceDir-Eigenschaft
output.classDir Ausgabeziel der Quellensatzklassendatei build/classes/<sourceSet>
output.resourcesDir Quellenset-Ressourcenausgabeziel build/resources/<sourceSet>
compileClasspath Klassenpfad zur Kompilierungszeit des Quellensatzes Konfiguration kompilieren<SourceSet>Einstellwert von
runtimeClasspath Quellensatz-Laufzeitklassenpfad Ausgabeeigenschaft, Konfigurationslaufzeit<sourceSet>Einstellwert von
java Alle Java-Quellen im Quellensatz src/<sourceSet>/Die Erweiterung unter Java ist.Java-Datei
java.srcDirs Verzeichnis mit Java-Quellen für den Quellensatz src/<sourceSet>/java
resources Alle Ressourcen im Quellensatz src/<sourceSet>/Die Erweiterung unter Ressourcen ist.Nicht-Java-Dateien
resources.srcDirs Verzeichnis mit Ressourcen des Quellensatzes src/<sourceSet>/resources
allJava Alle Java-Quellen im Quellensatz Java-Eigenschafteneinstellung(Änderungen aufgrund der Anwendung des Plug-Ins vorbehalten)
allSource Alle Java-Quellen und -Ressourcen im Quellensatz Java, Einstellungen für Ressourceneigenschaften(Änderungen aufgrund der Anwendung des Plug-Ins vorbehalten)

Zugriff auf Eigenschaften in Build-Skripten


println project.sourceSets.test.compileClasspath
println sourceSets.test.compileClasspath
println sourceSets['test'].compileClasspath

Referenz

Dieser Artikel wurde unter Bezugnahme auf die folgenden Bücher geschrieben.

Nachschlagewerk: Gründliche Einführung in Gradle Erstellen einer Automatisierungsplattform mit Build-Tools der nächsten Generation

Recommended Posts

Erstellen eines Java-Projekts mit Gradle
[Gradle] Erstellen Sie ein Java-Projekt mit einer Konfiguration, die von der Konvention abweicht
CICS-Java-Anwendung ausführen- (3) Build-Management mit Gradle
Java baut ein Dreieck
Erster Gradle Build (Java)
Erstellen Sie Java mit Wercker
Erstellen und testen Sie Java + Gradle-Anwendungen mit Wercker
Erstellen Sie mit Gradle mit VSCode Java → Ausführen
Erstellen Sie mit Gradle Spring Boot-Projekte nach Umgebung
Java-Tipps - Erstellen Sie mit Gradle ein Spring Boot-Projekt
Fügen Sie mit Gradle ein Projekt in einen beliebigen Ordner ein
Erstellen Sie eine Java-Entwicklungsumgebung mit VS Code
Erstellen Sie mit Gradle ein Java-Multiprojekt
Erstellen Sie mit Docker eine Node.js-Umgebung
Erstellen Sie mit Pleiades 4.8 eine Tomcat 8.5-Umgebung
Erstellen Sie eine Webanwendung mit Javalin
Erstellen Sie ein Java-Projekt mit Eclipse
Erstellen Sie Java mit Mac vs Code
[Java] [Play Framework] Bis das Projekt mit Gradle gestartet wird
Erstellen Sie ein Maven-Projekt mit Befehlen
[Hinweis] Eine Geschichte über das Ändern von Java-Build-Tools mit VS-Code
So erstellen Sie ein neues Gradle + Java + Jar-Projekt in Intellij 2016.03
[Java] Erstellen Sie mit Gradle ein ausführbares Modul
Erstellen Sie mit Docker eine PureScript-Entwicklungsumgebung
Erstellen Sie eine Java-Entwicklungsumgebung auf dem Mac
Erstellen Sie mit Docker eine Wordpress-Entwicklungsumgebung
De-cron! Erstellen Sie mit Rundeck einen Job Scheduler
CICS-Java-Anwendung ausführen- (2) Build-Management mit Maven
Teilen Sie eine Zeichenfolge in Java mit ". (Dot)"
Erstellen Sie OpenCV mit Java Wrapper unter Ubuntu 18.04
Konfigurieren Sie ein Multiprojekt mit Unterverzeichnissen in Gradle
Einführung eines automatisierten Java-Tests mit JUnit 5 + Gradle
Mit [AWS] CodeStar können Sie ein Spring (Java) -Projekt erstellen, das auf Lambda in nur 3 Minuten ausgeführt wird! !!
Vagabund Java bauen
Erstellen eines Projekts (und eines GitHub-Repositorys) mit Java und Gradle mit IntelliJ IDEA
Erstellen Sie eine Website mit Spring Boot + Gradle (jdk1.8.x)
Lesen Sie eine Zeichenfolge in einer PDF-Datei mit Java
Machen Sie die SpringBoot1.5 + Gradle4.4 + Java8 + Docker-Umgebung mit Java11 kompatibel
Erstellen Sie eine CSR mit erweiterten Informationen in Java
Erstellen Sie mit Java + MySQL ein einfaches Bulletin Board
[Windows] [IntelliJ] [Java] [Tomcat] Erstellen Sie mit IntelliJ eine Umgebung für Tomcat 9
Lassen Sie uns mit Javas Timer einen zeitgesteuerten Prozess erstellen! !!
[Gradle] Build-Vorgänge, die häufig in Java-Projekten ausgeführt werden
Führen Sie eine statische Code-Analyse mit Checkstyle mit Java + Gradle durch
Erstellen Sie eine Laravel / Docker-Umgebung mit VSCode devcontainer
Erstellen Sie mit Docker schnell eine WordPress-Entwicklungsumgebung
[Java] Erstellen Sie eine Sammlung mit nur einem Element
Erstellen Sie Java x Spring x VSCode x Gradle auf Docker (1)
Erstellen Sie eine E2E-Testumgebung mit Selenium (Java).
[Win10] Erstellen Sie eine JSF-Entwicklungsumgebung mit NetBeans
Bereiten Sie eine Scraping-Umgebung mit Docker und Java vor
Erstellen Sie eine Entwicklungsumgebung für Docker, Java und Code
Erstellen Sie eine Java-Ausführungsumgebung auf Sakura VPS
Versuchen Sie, ein Java-Programm mit VS-Code zu debuggen
[Jakarta EE 8 Anwendungsentwicklung mit Gradle] 2. Projekterstellung