Sto tentando di eseguire mvn release:perform
, ma il comando presuppone che il file pom sia nella radice del repository. Esiste una proprietà o preferenza di sistema che posso impostare per sovrascrivere il valore predefinito?release mvn: esecuzione fallita perché il file pom non è nella root del repository
La chiamata a mvn release:prepare
sembra aver avuto successo, come tutti i manufatti di rilascio sono seduti nella directory di destinazione e il repository è codificato correttamente.
Se è importante, questo è un progetto git.
EDIT Ecco quello che ho fatto:
cd /path/to/git/root/path/to/mvn/project
mvn -DdevelopmentVersion=1.2.0-SNAPSHOT -DreleaseVersion=1.1.0 release:prepare
...enter correct passphrase and choose all default options...
mvn release:perform
E poi clonare il repository remoto nella directory target/checkout
e dopo qualche sfornare e spingendo per il repo git remoto, il seguente errore accade:
[ERROR]
[ERROR] The project (/path/to/git/root/path/to/mvn/project/target/checkout/pom.xml) has 1 error
[ERROR] Non-readable POM /path/to/git/root/path/to/mvn/project/target/checkout/pom.xml: /path/to/git/root/path/to/mvn/project/target/checkout/pom.xml (No such file or directory)
Quindi, Maven è alla ricerca per il file pom nella radice della directory target/checkout
, che non è dove si trova.
n Maven assume il pom si trova nella directory di lavoro corrente e la radice del progetto. Non presuppone che il pom sia alla radice del repository. Un layout comune (in Subversion) è /trunk/ProjectName/pom.xml. rilascio: preparare lavori lì. Puoi approfondire il problema che stai ottenendo con il rilascio? –
Vedere la mia modifica sopra. –
Solo curioso, dove * è * il pom.xml si trova, e si trova automaticamente per tutte le altre attività, ad esempio "mvn install", "mvn compile"? In genere puoi usare "mvn -f dir1/dir2/pom.xml" per usare un pom.xml alternativo, sebbene non l'abbia mai provato con il plugin di rilascio. – Keith