Eine Notiz machen. Die Umgebung, in der das Beispiel erstellt wurde, ist Windows 10.
Die Beispielquelldatei lautet wie folgt.
App.java
package sample;
public class App {
public static void main(String[] arg) {
System.out.println("Hello World!");
}
}
Die Verzeichnisstruktur ist wie folgt. Die .class-Datei wird nach der Kompilierung im Klassenordner abgelegt. Die Manifestdatei, die in das JAR importiert werden soll, wird unter META-INF abgelegt.
C:\Beispiel für die Erstellung einer JAR-Datei>tree /F
Liste der Ordnerpfade:Volume OS
Die Seriennummer des Volumes lautet XXXX-XXXX
C:.
├─classes
├─META-INF
│ MANIFEST.MF
│
└─src
└─sample
App.java
In der Manifestdatei wird die Java-Klasse angegeben, in der die Hauptmethode ausgeführt wird, wenn das JAR ausgeführt wird.
MANIFEST.MF
Main-Class: sample.App
Lassen Sie uns nun kompilieren, bevor Sie das Glas erstellen. Kompilieren Sie mit dem Befehl javac.
Geben Sie mit -sourcepath
den Ordner an, in dem sich die Quelldatei befindet.
Verwenden Sie -d
, um den Ordner anzugeben, in dem die kompilierten Dateien abgelegt werden sollen.
javac -sourcepath src -d classes src\sample\App.java
Beim Kompilieren wird eine .class-Datei unter dem Klassenordner erstellt.
C:\Beispiel für die Erstellung einer JAR-Datei>tree /F
Liste der Ordnerpfade:Volume OS
Die Seriennummer des Volumes lautet XXXX-XXXX
C:.
├─classes
│ └─sample
│ App.class
│
├─META-INF
│ MANIFEST.MF
│
└─src
└─sample
App.java
Verwenden Sie dann den Befehl jar, um eine JAR-Datei zu erstellen.
Die Manifestdatei, die in die JAR-Datei importiert werden soll, wird mit m
angegeben.
Die Untergebenen des durch -C
angegebenen Ordners werden komprimiert und in die JAR-Datei importiert.
jar cvfm sample.jar META-INF\MANIFEST.MF -C classes .
Die Struktur der erstellten JAR-Datei ist wie folgt.
C:\Beispiel für die Erstellung einer JAR-Datei>jar tf sample.jar
META-INF/
META-INF/MANIFEST.MF
sample/
sample/App.class
Das Ausführungsergebnis ist wie folgt.
C:\Beispiel für die Erstellung einer JAR-Datei>java -jar sample.jar
Hello World!
Die Beispielquelldatei lautet wie folgt.
SampleServlet.java
package sample;
import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.ServletOutputStream;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
@WebServlet("/sample")
public class SampleServlet extends HttpServlet {
@Override
public void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
resp.setContentType("text/html");
resp.setCharacterEncoding("UTF-8");
ServletOutputStream out = resp.getOutputStream();
out.println("Hello World!");
out.flush();
}
}
Die Verzeichnisstruktur ist wie folgt. Die .class-Datei wird nach der Kompilierung im Ordner WebContent \ WEB-INF \ classes abgelegt. Unter lib werden die Bibliotheken platziert, die zum Kompilieren der obigen Quelldateien erforderlich sind.
C:\Beispiel für die Erstellung einer Kriegsdatei>tree /F
Liste der Ordnerpfade:Volume OS
Die Seriennummer des Volumes lautet XXXX-XXXX
C:.
├─lib
│ javax.servlet-api-3.1.0.jar
│
├─src
│ └─sample
│ SampleServlet.java
│
└─WebContent
└─WEB-INF
└─classes
Lassen Sie uns jetzt kompilieren, bevor wir den Krieg erstellen. Kompilieren Sie mit dem Befehl javac.
Geben Sie mit -sourcepath
den Ordner an, in dem sich die Quelldatei befindet.
Die Bibliothek wird durch -classpath
angegeben. Alle Dateien im lib-Ordner können mit *
angegeben werden.
Verwenden Sie -d
, um den Ordner anzugeben, in dem die kompilierten Dateien abgelegt werden sollen.
javac -sourcepath src -classpath lib\* -d WebContent\WEB-INF\classes src\sample\SampleServlet.java
Beim Kompilieren wird eine .class-Datei im Ordner WebContent \ WEB-INF \ classes erstellt.
C:\Beispiel für die Erstellung einer Kriegsdatei>tree /F
Liste der Ordnerpfade:Volume OS
Die Seriennummer des Volumes lautet XXXX-XXXX
C:.
├─lib
│ javax.servlet-api-3.1.0.jar
│
├─src
│ └─sample
│ SampleServlet.java
│
└─WebContent
└─WEB-INF
└─classes
└─sample
SampleServlet.class
Verwenden Sie dann den Befehl jar, um eine Kriegsdatei zu erstellen.
Die Untergebenen des durch -C
angegebenen Ordners werden komprimiert und in die War-Datei importiert.
jar cvf sample.war -C WebContent .
Die Struktur der erstellten Kriegsdatei ist wie folgt.
C:\Beispiel für die Erstellung einer Kriegsdatei>jar tf sample.war
META-INF/
META-INF/MANIFEST.MF
WEB-INF/
WEB-INF/classes/
WEB-INF/classes/sample/
WEB-INF/classes/sample/SampleServlet.class
Wenn Sie die erstellte Kriegsdatei für Tomcat usw. bereitstellen und über einen Browser darauf zugreifen, wird "Hallo Welt!" Angezeigt.
Recommended Posts