指定要使用的Launcher

时间:2013-10-28 16:53:42

标签: spring spring-boot

如何指定要使用的其他启动器。我想使用M5版本中添加的PropertiesLauncher

我尝试修改mainfest文件以强制它使用PropertiesLauncher类,它有点工作但是抛出了这个错误]

$ java -jar hdfspub-0.0.1-SNAPSHOT.jar

2013年10月28日下午12:42:44 org.springframework.boot.loader.PropertiesLauncher initializeProperties

信息:找到:application.properties 2013年10月28日12:42:44 org.springframework.boot.loader.PropertiesLauncher initializePaths 信息:嵌套存档路径:[lib /]

2013年10月28日下午12:42:44 org.springframework.boot.loader.PropertiesLauncher getClassPathArchives 信息:从lib /

添加类路径条目

java.lang.IllegalStateException:未指定“Start-Class”清单条目         在org.springframework.boot.loader.archive.Archive.getMainClass(Archive.java:52)         在org.springframework.boot.loader.PropertiesLauncher.getMainClass(PropertiesLauncher.java:298)         在org.springframework.boot.loader.Launcher.launch(Launcher.java:53)         在org.springframework.boot.loader.PropertiesLauncher.main(PropertiesLauncher.java:343)所以它似乎没有包含没有指定Start-Class的jar ..

1 个答案:

答案 0 :(得分:2)

当您使用“java -jar ...”时,它会在META-INF / MANIFEST.MF中查找Main-Class属性。没有春天与此相关。如果你使用spring-boot-tools构建jar,那么就会猜到Main-Class,我认为在M5中没有任何支持来覆盖它。在最近的快照中,您可以将“布局”指定为ZIP,例如

apply plugin: "spring-boot"
springBoot {
  layout = 'ZIP'
}

或在Maven

<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<configuration>
    <layout>ZIP</layout>
</configuration>
</plugin>