[JAVA] Systemzeit mit Maven an MANIFEST.MF ausgeben

Java-Webprojekt, das mit Maven in der Datei MANIFEST.MF bereitgestellt wurde

Irgendwie dabei bleiben.

Weise

Verwenden Sie maven.build.timestamp

Zunächst wird die von Maven erstellte Eigenschaft maven.build.timestamp verwendet. Siehe unten. http://vbnmkyoto.blogspot.com/

pom.xml(Auszug)


<plugin>
	<groupId>org.apache.maven.plugins</groupId>
	<artifactId>maven-jar-plugin</artifactId>
	<version>3.1.0</version>
	<configuration>
		<archive>
			<manifestEntries>
				<Build-Timestamp>${maven.build.timestamp}</Build-Timestamp>
			</manifestEntries>
		</archive>
	</configuration>
</plugin>

Geben Sie das Format mit der Eigenschaft maven.build.timestamp.format an, um das Format zu ändern.

pom.xml(Auszug)


<properties>
	<maven.build.timestamp.format>yyyyMMhhmmss</maven.build.timestamp.format>
</properties>

Wenn Sie dies tun, wird es in MANIFEST.MF wie folgt angezeigt.

MANIFEST.MF


Build-Timestamp:20181129115959

Rakuchin ... Aber in Maven 3.2.2 oder höher ist die Ausgabezeit UTC geworden. https://issues.apache.org/jira/browse/MNG-5452 Es ist unpraktisch, in Japan normal zu arbeiten. Ich wünschte, ich könnte die Zeitzone einstellen, aber ich könnte so etwas nicht finden.

Verwenden Sie das Build Helper Maven Plugin

Ich habe nach so etwas gesucht und versucht, das Build Helper Maven Plugin zu verwenden. Siehe unten. https://stackoverflow.com/questions/28281988/how-to-have-maven-show-local-timezone-in-maven-build-timestamp

pom.xml(Auszug)


<plugin>
	<groupId>org.codehaus.mojo</groupId>
	<artifactId>build-helper-maven-plugin</artifactId>
	<version>3.0.0</version>
	<executions>
		<execution>
			<id>timestamp-property</id>
			<goals>
				<goal>timestamp-property</goal>
			</goals>
			<configuration>
				<name>build.time</name>
				<pattern>yyyyMMddHHmmss</pattern>
				<locale>ja_JP</locale>
				<timeZone>Asia/Tokyo</timeZone>
			</configuration>
		</execution>
	</executions>
</plugin>

Stellen Sie den Einstellwert des Namens in der Beschreibung des Ausgabeteils ein.

pom.xml(Auszug)


<plugin>
	<groupId>org.apache.maven.plugins</groupId>
	<artifactId>maven-jar-plugin</artifactId>
	<version>3.1.0</version>
	<configuration>
		<archive>
			<manifestEntries>
				<Build-Timestamp>${build.time}</Build-Timestamp>
			</manifestEntries>
		</archive>
	</configuration>
</plugin>

Die Build-Ausführungszeit gemäß Japan-Zeit wird jetzt an MANIFEST.MF ausgegeben.

Referenz

https://www.mojohaus.org/build-helper-maven-plugin/usage.html Es scheint praktisch zu sein, also möchten Sie es vielleicht etwas genauer ausprobieren.

Recommended Posts

Systemzeit mit Maven an MANIFEST.MF ausgeben
Protokoll mit slf4j + Logback mit Maven in externe Datei ausgeben
So setzen Sie JAVA_HOME mit dem Appassembler-Maven-Plugin von Maven
Stellen Sie Java-Webanwendungen mit maven in Azure bereit
Ich habe versucht, CSV mit Outsystems zu lesen und auszugeben
So geben Sie einen Standard aus einem Array mit for Each aus
Booten nach Umgebung mit Spring Boot of Maven
So aktivieren Sie die Senden-Schaltfläche jedes Mal mit jquery
Gibt an, ob die Serverseite zum Zeitpunkt der Systemwiederherstellung mit Kotlin oder Java erstellt werden soll
FizzBuzz mit Stream ausgeben
Geben Sie das integrierte Tomcat-Zugriffsprotokoll mit Spring Boot an die Standardausgabe aus
Ausgabezeitstempel für Menschen mit JSON-Layout von log4j2
So erhalten Sie Werte in Echtzeit mit TextWatcher (Android)
Beispielcode zum Parsen von Datum und Uhrzeit mit Java SimpleDateFormat
Legen Sie ein Wasserzeichen fest, das nur beim Drucken mit iText ausgegeben werden soll
Fluss bis zur Ausgabe von Tabellendaten, die mit Spring Boot angezeigt werden sollen
Selbst in Java möchte ich true mit == 1 && a == 2 && a == 3 ausgeben
Jetzt ist es an der Zeit, mit der Stream-API zu beginnen
[Java] Ich möchte Standardeingabe und Standardausgabe mit JUnit testen