2016-08-11 15 views
0

我已經在Bamboo中爲我正在開發的Spring-Boot應用程序創建了構建計劃。當我部署並嘗試啓動應用程序時,出現以下錯誤。Spring引導應用程序的主要類在Gradle Build後失蹤

無主清單屬性,在MyApp.jar

我檢查從版本控制我的Manifest.MF文件:

清單-版本:1.0
主類:COM。 applications.MyApplication

然後我檢查構建後的Manifest.MF:

清單-版本:1.0
實施-標題:春天引導數據REST入門
的實現版本:1.4.0.RELEASE
歸檔-版本:叢歸檔
內置者:竹
規格供應商:匹軟件公司
規格 - 標題:春天引導數據REST入門
實施,廠商ID:org.springframework.boot
實現廠商:樞紐Software,Inc.的
創建,通過:阿帕奇Maven的3.2.1
內建的jdk:1.8.0_60
規格,版本:1.4.0.RELEASE
實施-URL:http://projects.spring.io/spring-boot/

請注意,主級屬性缺失。

我是新來*竹由Atlassian的,我現在用的是鮑勃·斯威夫特Atlassian的附加組件 - Groovy的任務其中包括搖籃構建的任務。

有沒有人見過這種行爲?任何解決方案的想法或解決?

+0

這是一個非常奇怪的清單,它似乎是從'spring-boot-starter-data-rest'直接複製的。你提到你在使用Gradle,但是這個清單是由Maven創建的。你嘗試過一個本地構建,並檢查內置的jar裏面有什麼? –

+0

我正在使用Spring Boot/IntelliJ提供的build.gradle文件。我沒有做任何改變。我在本地運行它,結果相同 –

+0

我在Oracle的Java站點找到了一個解決方法:http://docs.oracle.com/javase/tutorial/deployment/jar/appman.html。它位於「使用JAR工具**設置入口點」部分。 –

回答

1

解決這個問題很簡單。在我的系統上,我使用Gradle從命令行構建了我的jar,並且創建了一個可執行的jar以及正確的MANIFEST.MF。在Bamboo中,我使用了一個簡單的內聯腳本以及Gradle包裝器,並獲得了與我的系統相同的結果。在我的研究中,我發現IntelliJ misses several key Spring Boot tasks。在這裏學到的重要教訓是:「從命令行生成

相關問題