[JAVA] Nehmen Sie das externe Glas mit Spring boot2 + Maven3 in das Paket auf

Einführung

Die Teammitglieder waren süchtig nach der Website, und selbst wenn ich herausfinden wollte, wie es geht, hat es nicht geklappt, also werde ich eine Notiz darüber hinterlassen, was ich etwas anders gemacht habe.

Es ist nicht besonders schwierig, aber wenn es passt, passt es.

Umgebung

Java8 Maven3 Spring boot 2.0.2.RELEASE

Zweck

Fügen Sie ein externes Glas in das Glas ein, das mit dem sauberen Paket ./mvnw erstellt wurde

Ein Projekt erstellen

Dieses Mal muss es nur in das Paket aufgenommen werden, sodass keine bestimmte Implementierung erfolgt.

pom.xml Wir werden das externe jar in pom.xml ohne Implementierung setzen.

dependencies Es kann nicht geholfen werden, auch wenn es nur im Paket enthalten ist. Daher werde ich die Informationen des JARs, das ich dieses Mal hinzufügen möchte, zur Abhängigkeit hinzufügen. Wenn Sie nach dem Hinzufügen ein Update durchführen, sollten Sie keine Probleme bei der Entwicklung von Eclipse haben.

Ich bin mit der Variablenerweiterung von maven nicht so vertraut, aber beim Festlegen eines Ordners bleiben zwei Dinge, $ {project.basedir} und $ {basedir}, oft bei der Suche hängen, um den Referenzordner anzugeben. Es scheint jedoch, dass das erstere auf das Projektverzeichnis und das letztere auf das Verzeichnis pom.xml verweist. Wenn ich mir die Maven-Seite anschaute, sah ich vorerst oft die erstere, also werde ich dieses Mal $ {project.basedir}` verwenden.

Beachten Sie, dass anscheinend "Version" und die letzte Version des JAR-Namens übereinstimmen müssen (in Eclipse tritt ein Fehler auf). Bitte stimmen Sie damit überein.

pom.xml


<dependency>
    <groupId>com.tasogarei</groupId>
    <artifactId>hogehoge</artifactId>
    <version>1</version>
    <scope>system</scope>
    <systemPath>${project.basedir}/lib/hogehoge1.jar</systemPath>
</dependency>

plugins Die Einstellung zum Mischen im Glas erfolgt über die Plugin-Einstellung. Es gibt ein "includeSystemScope" in der "Konfiguration" und Sie müssen es nur "wahr" machen.

<plugin>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-maven-plugin</artifactId>
    <configuration>
        <includeSystemScope>true</includeSystemScope>
    </configuration>
</plugin>

Legen Sie das Glas in das konfigurierte Verzeichnis

Dieses Mal ist es auf "$ {project.basedir} / lib / hogehoge1.jar" festgelegt. Platzieren Sie also ein entsprechendes Glas. Alles war in Ordnung, also brachte ich das Glas, das in ".m2 /" war, passend mit.

Überprüfen Sie, ob es wirklich enthalten ist

Das ist alles für die Einstellungen. Lass es uns versuchen.

package Machen Sie es zu einem Glas aus dem Befehl mvnw.

./mvnw clean package

Überprüfen Sie den Inhalt des Glases

Nachdem Sie ein Glas erfolgreich erstellt haben, überprüfen wir den Inhalt des mit jar tf erstellten Glases. Als ich überprüft habe, dass "BOOT-INF / lib / hogehoge-1.jar" vorhanden ist, ist es mir gelungen, das externe Glas sicher einzuschließen.

$ jar tf jartest-0.0.1-SNAPSHOT.jar | sort
BOOT-INF/
BOOT-INF/classes/
BOOT-INF/classes/application.properties
BOOT-INF/classes/com/
BOOT-INF/classes/com/tasogarei/
BOOT-INF/classes/com/tasogarei/app/
BOOT-INF/classes/com/tasogarei/app/JartestApplication.class
BOOT-INF/lib/
BOOT-INF/lib/hogehoge-1.jar
BOOT-INF/lib/javax.annotation-api-1.3.2.jar
BOOT-INF/lib/jul-to-slf4j-1.7.25.jar
BOOT-INF/lib/log4j-api-2.10.0.jar
BOOT-INF/lib/log4j-to-slf4j-2.10.0.jar
BOOT-INF/lib/logback-classic-1.2.3.jar
BOOT-INF/lib/logback-core-1.2.3.jar
BOOT-INF/lib/slf4j-api-1.7.25.jar
BOOT-INF/lib/snakeyaml-1.19.jar
BOOT-INF/lib/spring-aop-5.0.6.RELEASE.jar
BOOT-INF/lib/spring-beans-5.0.6.RELEASE.jar
BOOT-INF/lib/spring-boot-2.0.2.RELEASE.jar
BOOT-INF/lib/spring-boot-autoconfigure-2.0.2.RELEASE.jar
BOOT-INF/lib/spring-boot-starter-2.0.2.RELEASE.jar
BOOT-INF/lib/spring-boot-starter-logging-2.0.2.RELEASE.jar
BOOT-INF/lib/spring-context-5.0.6.RELEASE.jar
BOOT-INF/lib/spring-core-5.0.6.RELEASE.jar
BOOT-INF/lib/spring-expression-5.0.6.RELEASE.jar
BOOT-INF/lib/spring-jcl-5.0.6.RELEASE.jar
META-INF/
META-INF/MANIFEST.MF
META-INF/maven/
META-INF/maven/com.tasogarei/
META-INF/maven/com.tasogarei/jartest/
META-INF/maven/com.tasogarei/jartest/pom.properties
META-INF/maven/com.tasogarei/jartest/pom.xml
org/
org/springframework/
org/springframework/boot/
org/springframework/boot/loader/
org/springframework/boot/loader/archive/
org/springframework/boot/loader/archive/Archive$Entry.class
org/springframework/boot/loader/archive/Archive$EntryFilter.class
org/springframework/boot/loader/archive/Archive.class
org/springframework/boot/loader/archive/ExplodedArchive$1.class
org/springframework/boot/loader/archive/ExplodedArchive$FileEntry.class
org/springframework/boot/loader/archive/ExplodedArchive$FileEntryIterator$EntryComparator.class
org/springframework/boot/loader/archive/ExplodedArchive$FileEntryIterator.class
org/springframework/boot/loader/archive/ExplodedArchive.class
org/springframework/boot/loader/archive/JarFileArchive$EntryIterator.class
org/springframework/boot/loader/archive/JarFileArchive$JarFileEntry.class
org/springframework/boot/loader/archive/JarFileArchive.class
org/springframework/boot/loader/data/
org/springframework/boot/loader/data/RandomAccessData.class
org/springframework/boot/loader/data/RandomAccessDataFile$1.class
org/springframework/boot/loader/data/RandomAccessDataFile$DataInputStream.class
org/springframework/boot/loader/data/RandomAccessDataFile$FileAccess.class
org/springframework/boot/loader/data/RandomAccessDataFile.class
org/springframework/boot/loader/ExecutableArchiveLauncher.class
org/springframework/boot/loader/jar/
org/springframework/boot/loader/jar/AsciiBytes.class
org/springframework/boot/loader/jar/Bytes.class
org/springframework/boot/loader/jar/CentralDirectoryEndRecord.class
org/springframework/boot/loader/jar/CentralDirectoryFileHeader.class
org/springframework/boot/loader/jar/CentralDirectoryParser.class
org/springframework/boot/loader/jar/CentralDirectoryVisitor.class
org/springframework/boot/loader/jar/FileHeader.class
org/springframework/boot/loader/jar/Handler.class
org/springframework/boot/loader/jar/JarEntry.class
org/springframework/boot/loader/jar/JarEntryFilter.class
org/springframework/boot/loader/jar/JarFile$1.class
org/springframework/boot/loader/jar/JarFile$2.class
org/springframework/boot/loader/jar/JarFile$JarFileType.class
org/springframework/boot/loader/jar/JarFile.class
org/springframework/boot/loader/jar/JarFileEntries$1.class
org/springframework/boot/loader/jar/JarFileEntries$EntryIterator.class
org/springframework/boot/loader/jar/JarFileEntries.class
org/springframework/boot/loader/jar/JarURLConnection$1.class
org/springframework/boot/loader/jar/JarURLConnection$JarEntryName.class
org/springframework/boot/loader/jar/JarURLConnection.class
org/springframework/boot/loader/jar/StringSequence.class
org/springframework/boot/loader/jar/ZipInflaterInputStream.class
org/springframework/boot/loader/JarLauncher.class
org/springframework/boot/loader/LaunchedURLClassLoader$UseFastConnectionExceptionsEnumeration.class
org/springframework/boot/loader/LaunchedURLClassLoader.class
org/springframework/boot/loader/Launcher.class
org/springframework/boot/loader/MainMethodRunner.class
org/springframework/boot/loader/PropertiesLauncher$1.class
org/springframework/boot/loader/PropertiesLauncher$ArchiveEntryFilter.class
org/springframework/boot/loader/PropertiesLauncher$PrefixMatchingArchiveFilter.class
org/springframework/boot/loader/PropertiesLauncher.class
org/springframework/boot/loader/util/
org/springframework/boot/loader/util/SystemPropertyUtils.class
org/springframework/boot/loader/WarLauncher.class

Recommended Posts

Nehmen Sie das externe Glas mit Spring boot2 + Maven3 in das Paket auf
Hallo Welt mit Eclipse + Spring Boot + Maven
Konfigurieren Sie die Spring Boot-Anwendung mit dem Maven Multi-Modul
Testen Sie den Controller mit Mock MVC im Spring Boot
Asynchrone Verarbeitung mit regelmäßiger Ausführung in Spring Boot
Mit Spring Boot herunterladen
Fügen Sie das Bild mit der statischen Java-Methode in die JAR-Datei ein
SSO mit GitHub OAuth in der Spring Boot 1.5.x-Umgebung
Bis Sie mit der Entwicklung mit Spring Boot in Eclipse 1 beginnen
Booten nach Umgebung mit Spring Boot of Maven
Laden Sie ein externes Glas aus dem Spring Boot-Fettglas
Bis Sie mit der Entwicklung mit Spring Boot in Eclipse 2 beginnen
Erstellen einer Datenbankumgebung mit Docker in Spring Boot (IntellJ)
Legen Sie den Kontextparameter in Spring Boot fest
Generieren Sie mit Spring Boot einen Barcode
Hallo Welt mit Spring Boot
Implementieren Sie GraphQL mit Spring Boot
Beginnen Sie mit Spring Boot
Hallo Welt mit Spring Boot!
Spring Boot 2 Multiprojekt mit Gradle
Führen Sie LIFF mit Spring Boot aus
SNS-Login mit Spring Boot
Datei-Upload mit Spring Boot
Spring Boot beginnt mit dem Kopieren
Spring Boot beginnend mit Docker
Hallo Welt mit Spring Boot
Setzen Sie Cookies mit Spring Boot
Verwenden Sie Spring JDBC mit Spring Boot
Wichtige Änderungen in Spring Boot 1.5
Modul mit Spring Boot hinzufügen
Erste Schritte mit Spring Boot
NoHttpResponseException in Spring Boot + WireMock
Spring Boot Externe Einstellungspriorität
Erstellen Sie mit Spring Boot einen Mikrodienst
Mail mit Spring Boot verschicken
Verwenden Sie thymeleaf3 mit parent, ohne Spring-Boot-Starter-Parent in Spring Boot anzugeben
Einfache Entwicklung von Webanwendungen mit STS und Spring Boot. In 10 Minuten.
Verwenden Sie die Standardauthentifizierung mit Spring Boot
Frühlingsstiefel Hallo Welt in Eclipse
Spring Boot-Anwendungsentwicklung in Eclipse
gRPC auf Spring Boot mit grpc-spring-boot-Starter
Erstellen Sie eine App mit Spring Boot 2
Hot Deploy mit Spring Boot-Entwicklung
Datenbankverknüpfung mit doma2 (Spring Boot)
Schreiben Sie den Testcode mit Spring Boot
So erstellen Sie eine JAR-Datei ohne Abhängigkeiten in Maven
Siehe das relative Umleitungsverhalten mit der Einstellung server.tomcat.use-relative-redirects in Spring Boot
Spring Boot Programmierung mit VS Code
Bis "Hallo Welt" mit Spring Boot
Erstellen Sie eine Anfrage-App mit Spring Boot
Erhalten Sie Validierungsergebnisse mit Spring Boot
Vergleiche Hallo Welt! Mit Spring Boot mit Java, Kotlin und Groovy
(Intellij) Hallo Welt mit Spring Boot
Erstellen Sie eine App mit Spring Boot
Implementieren Sie die REST-API mit Spring Boot
Was ist @Autowired im Spring Boot?
Google Cloud Platform mit Spring Boot 2.0.0
Implementieren Sie die Spring Boot-Anwendung in Gradle
Fügen Sie Bildressourcen in die JAR-Datei ein
Ich habe GraphQL mit Spring Boot ausprobiert