Я пытаюсь ввести свойство, которое определено в server.env
.
@Inject
@ConfigProperty(name = "property")
private String serverProperty;
содержимое server.env
property=server-env-property
Я добавил его внутрь pom.xml
<serverEnv>src/main/liberty/config/server.env</serverEnv>
Читается во время liberty-maven-plugin:2.2:package-server
CWWKM2144I: Update server configuration file server.env from /Users/abalaniuc/code/config/src/main/liberty/config/server.env.
Однако, когда приложение выполняется, я получил эту ошибку:
The property property was not found in the configuration.
Трассировка стека:
[ERROR ] CWMCG5003E: The [BackedAnnotatedField] @Inject @ConfigProperty private com.microprofile.study.config.config.ConfigTestController.serverProperty InjectionPoint dependency was not resolved. Error: java.util.NoSuchElementException: CWMCG0015E: The property property was not found in the configuration.
at com.ibm.ws.microprofile.config.impl.AbstractConfig.getValue(AbstractConfig.java:175)
at [internal classes]
Очевидно, что я что-то упустил, но не могу понять, чтоименно так.Не могли бы вы помочь мне?
Как было предложено в ответах ниже, я удалил .
из имени свойства, но все еще получаю тот же результат.
Настройка подключаемого модуля Liberty:
<plugin>
<groupId>net.wasdev.wlp.maven.plugins</groupId>
<artifactId>liberty-maven-plugin</artifactId>
<version>${openliberty.maven.version}</version>
<executions>
<execution>
<id>package-server</id>
<phase>package</phase>
<goals>
<goal>create-server</goal>
<goal>install-apps</goal>
<goal>package-server</goal>
</goals>
<configuration>
<outputDirectory>target/wlp-package</outputDirectory>
</configuration>
</execution>
</executions>
<configuration>
<assemblyArtifact>
<groupId>io.openliberty</groupId>
<artifactId>openliberty-runtime</artifactId>
<version>${openliberty.version}</version>
<type>zip</type>
</assemblyArtifact>
<configFile>src/main/liberty/config/server.xml</configFile>
<serverEnv>src/main/liberty/config/server.env</serverEnv>
<bootstrapPropertiesFile>src/main/liberty/config/bootstrap.properties</bootstrapPropertiesFile>
<appArchive>${project.build.directory}/${final.name}.war</appArchive>
<packageFile>${project.build.directory}/${final.name}.jar</packageFile>
<include>runnable</include>
<serverName>${final.name}</serverName>
<installAppPackages>project</installAppPackages>
</configuration>
</plugin>
Для запуска приложения я делаю:
mvn clean package
java -jar target/config.jar