Die Verwendung von Groovy in der POM-Datei für die Begrenzerumschaltung funktioniert für verschiedene Entwickler unterschiedlich

Wir verwenden ein kleines Segment von Groovy-Code in unserer POM-Datei, um die Backslash-Begrenzer im Hauptbasisverzeichnis durch Forward-Slash-Begrenzer zu ersetzen. Weitere Informationen hierzu finden Sie in diesem Beitrag:Wie konvertiert man eine Datei Separator in Maven

Das Problem, das wir haben, ist jedoch, dass die von diesem Link vorgeschlagene Groovy-Funktion auf einem Entwicklercomputer einwandfrei funktioniert, auf einem anderen jedoch nicht.

Was für den ersten Entwickler funktioniert, ist folgendes: (Der in dem verlinkten Beitrag erwähnte Code)

pom.properties['main.basedir']=project.basedir.absolutePath.replace('\\','/');

Was für den anderen Entwickler funktioniert, ist das Folgende:

pom.properties['main.basedir']=project.basedir.absolutePath.replace('\','/');

(Beachten Sie den einzelnen Backslash)

Die Fehler, die der zweite Entwickler sieht, wenn er den doppelten Backslash verwendet, sind:

[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 1:15.096s
[INFO] Finished at: Tue Sep 03 16:54:18 BST 2013
[INFO] Final Memory: 36M/298M
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal org.codehaus.gmaven:gmaven-plugin:1.5:execute (setproperty) on project bonus-wallet-amq-tests: startup failed, script1378223658221.groovy: 1: expecting ''', found '<EOF>' @ line 1, column 79.
[ERROR] 1 error

Wir können nicht herausfinden, warum der zweite Entwickler nur den einzelnen Backslash benötigt. Beide Entwickler verwenden Eclipse Juno, Java 1.6 Update 45, und die Version von groovy muss mit der Version übereinstimmen, die in der POM-Datei als Abhängigkeit definiert ist. (Version 1.6.9)

Das Einzige, was wir fanden, war, dass die Versionen der Maven unterschiedlich waren. Entwickler 1 hat Version 3.0.3 und Entwickler 2 hat Version 3.0.5. Wir konnten jedoch keine Dokumentation finden, die sich darauf beziehen könnte.

Jede Hilfe wäre von größtem Nutzen.

Antworten auf die Frage(1)

Ihre Antwort auf die Frage