2016-08-18 239 views
0

我遇到这个奇怪的问题,我可以从内部的IntelliJ运行没有问题,我的春节,启动应用程序的jar文件时遇到无法解析的占位符,但是当我做:春季启动 - 从

mvn clean package -Pst -Dspring.profiles.active=st && java -jar target/myapp-0.0.1-SNAPSHOT.jar 

我可以看到错误,指出Spring Boot无法解析@Value占位符。

ERROR o.s.boot.SpringApplication - Application startup failed 
java.lang.IllegalArgumentException: Could not resolve placeholder 

我所做的调查是为了让jar文件并解压文件如使用jar xf myapp.jar,我可以看到在classpath根目录下的属性文件。最初,我有这个问题的Maven不是从main/resource文件夹我的包装性能和静,但我已经决定,与:

  <resource> 
       <directory>src/main/resources</directory> 
      </resource> 
      <resource> 
       <directory>static</directory> 
       <targetPath>static</targetPath> 
      </resource> 

任何意见,想法可能我在这里失去了?

回答

0

我设法解决这个问题。它真的有线,似乎我需要告诉java在哪个配置文件中运行jar,例如--spring.profiles.active = st

mvn clean package -Pst -Dspring.profiles.active=st && java -jar target/myapp-0.0.1-SNAPSHOT.jar --spring.profiles.active=st