Mam plik działce z następującymMaven - Odczytywanie własności z właściwościami pliku zewnętrznego
junit.version=3.8.1
dbcp.version=5.5.27
oracle.jdbc.version=10.2.0.2.0
Staram się czytać tych właściwości z mojego pliku pom jak pokazano poniżej
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>${junit.version}</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>dbcp</groupId>
<artifactId>dbcp</artifactId>
<version>${dbcp.version}</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>com.oracle</groupId>
<artifactId>ojdbc14</artifactId>
<version>${oracle.jdbc.version}</version>
<scope>provided</scope>
</dependency>
a konfiguracja wtyczki
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>properties-maven-plugin</artifactId>
<executions>
<!-- Associate the read-project-properties goal with the initialize phase, to read the properties file. -->
<execution>
<phase>initialize</phase>
<goals>
<goal>read-project-properties</goal>
</goals>
<configuration>
<files>
<file>../live.properties</file>
</files>
</configuration>
</execution>
</executions>
</plugin>
Uważam, że gdy uruchamiam mvn czyste zainstalować go nie znaleźć właściwości, zamiast tego pojawia się wi Następujące błędy:
'dependencies.dependency.version' for junit:junit:jar must be a valid version but is '${junit.version}'. @ line 23, column 16
'dependencies.dependency.version' for dbcp:dbcp:jar must be a valid version but is '${dbcp.version}'. @ line 31, column 12
'dependencies.dependency.version' for com.oracle:ojdbc14:jar must be a valid version but is '${oracle.jdbc.version}'. @ line 37, column 13
Powyższe niepowodzenia występują w sytuacjach, gdy odwołuję się do właściwości, gdy deklaruję zależność. Zauważyłem, że w niektórych innych sytuacjach właściwość jest odczytywana z pliku. Na przykład to działa w przypadku korzystania z nieruchomości na metce wersji projektu (nie zależność wersja)
Wydaje się, że nieruchomość nie jest czytany z pliku, jeśli jest mowa w zgłoszeniu zależność ale jest czytana jeżeli mowa z dowolnego miejsca. Jakieś pomysły?
Jaki jest sens posiadania tych wersji w oddzielnym pliku? – artbristol
Udostępniam ten plik właściwości innym projektem, który tworzy nakładkę wojenną przy użyciu wersji. – ziggy