2010-10-12 6 views
7

Ich möchte meine JAR/WAR-Anwendung wissen, was die SVN-Revisionsnummer des Quellcodes ist. Ich möchte, dass diese Revisionsnummer später für Web-Endbenutzer unten auf einer Webseite usw. gerendert wird.Wie SVN Revisionsnummer in JAR injizieren?

Gibt es ein existierendes Maven-Plugin, um den Prozess zu automatisieren? Ich denke, dass das Plugin die Informationen von svn sammeln und in eine Datei wie src/resources/revision.txt speichern muss.

Antwort

4

Diese Seite gibt die Antwort auf ein fast identisches Problem:

Maven Kochbuch: How To Add SVN Revision To A JAR Manifest?

In Ihrem Fall stattdessen einen offensichtlichen Eintrag zu bauen, müssen Sie die buildnumber Variable verwenden für resource filtering

+0

Was ist falsch mit Manifest-Eintrag? Ich gehe davon aus, dass es dann von Java aus zugänglich ist. Recht? – yegor256

+0

@vincenzo sicher, es gab gestern eine Frage über ein ähnliches Problem (Sie können die Antwort verwenden): http://stackoverflow.com/questions/3907737/how-to-read-manifest-mf-from-pojo-class- not-a-servlet-instanziated-by-spring –

+0

@vincenzo aber das Filtern einer JSP oder einfachen Textdatei mit Maven ist viel einfacher –

0

können Sie verwenden svn keyword substitution

+1

In solch einem Fall werde ich die SVN-Version dieser bestimmten Datei abholen, nicht der gesamten Codebasis. – yegor256

+0

Schlüsselwortersetzung wird nur bei geänderten Dateien durchgeführt, d. H. Keine Änderung, keine neue Revisionsnummer. Man muss die aktuelle Revision des Projekts aus dem '.svn'-Verzeichnis lesen. MediaWiki hat Code, der das tut, aber es ist in PHP geschrieben. – Archimedix

3

die Versionen-Maven-Plugin Buildnumber-Maven-Plugin aus dem Projekt Codehaus Mojo verwenden. Bietet viele Möglichkeiten, dies zu tun.

+0

Wirklich? Ich kann keine finden. Wir sprechen über SVN-Revision, nicht POM-Version. –

+0

Ich habe meine Anwser bearbeitet, hatte das falsche Plugin – Salandur

+0

@Salandur Danke für das Update, aber das ist genau das, was "Seanizer" oben erklärt haben. – yegor256

Verwandte Themen