इस आवेदन एक वसंत MVC आवेदन जहाँ तक मैं बता सकता हूँ नहीं है - यह शायद अगर यह था विस्थापित करने के लिए बहुत आसान हो जाएगा। लक्ष्य (जिथब मुद्दे के अनुसार) एक निष्पादन योग्य जेएआर प्राप्त करना है। हालांकि मूल योजना स्प्रिंग बूट का उपयोग करके एक डब्ल्यूएआर में माइग्रेट कर सकती है और फिर काम करने के बाद एक जार में जा सकती है। यह एक बहुत ही सरल ऐप है इसलिए हमें वास्तव में web.xml
पर देखने की आवश्यकता है और इसे प्रासंगिक स्प्रिंग बूट सुविधाओं में अनुवादित करें। यहां कुछ सामान्य मार्गदर्शिकाएं दी गई हैं:
SpringBootServletInitializer
(उदाहरण के लिए Application
नामक कक्षा में) द्वारा एक तैनाती WAR बनाएं, और स्प्रिंग बूट @EnableAutoConfiguration
एनोटेशन जोड़ें। उदाहरण:
@Configuration
@EnableAutoConfiguration
@ComponentScan
public class Application extends SpringBootServletInitializer {
@Override
protected SpringApplicationBuilder configure(SpringApplicationBuilder application) {
return application.sources(Application.class);
}
फिर कुछ विन्यास जोड़ें:
प्रकार Servlet
या ServletRegistrationBean
का एक @Bean
स्थापित करता है कि कंटेनर में सेम के रूप में अगर यह web.xml
एक में एक <servlet/>
और <servlet-mapping/>
था @Bean
प्रकार Filter
या FilterRegistrationBean
समान व्यवहार करता है (जैसे <filter/>
और <filter-mapping/>
)।
ApplicationContext
इस मामले में एक XML फ़ाइल में निहित है, तो सबसे आसान पहला कदम @Import
है कि वसंत Application
में। यह इतना आसान है कि इसे @Bean
परिभाषाओं के रूप में कुछ पंक्तियों में पुनर्निर्मित किया जा सकता है।
स्टेटिक संसाधनों classpath जड़
एक बार युद्ध में /public
(या /static
या /resources
या /META-INFO/resources
) करने के लिए ले जाया जा सकता है कि हम इसे निष्पादन योग्य बनाने के काम कर रहा है हमारे Application
, उदा करने के लिए एक main
विधि जोड़कर
public static void main(String[] args) {
SpringApplication.run(Application.class, args);
}
Getting Started Guide on Converting a JAR to a WAR भी देखें।
जैसा कि मैंने कहा, इस विशिष्ट ऐप के साथ सबसे बड़ी समस्या यह है कि यह स्प्रिंग एमवीसी ऐप नहीं है। जैसा कि आयरिशमैन कह सकता है "अगर मैं वहां जाना चाहता था, महोदय, मैं यहां से शुरू नहीं करूँगा।"यह सामान्य रूप से एक दिलचस्प सवाल है, लेकिन मैं स्प्रिंग बूट में स्प्रिंग एप्लिकेशन को माइग्रेट करने के लिए किसी और को सलाह देता हूं कि यहां सामान्य सलाह पढ़ें लेकिन शायद कहीं और चर्चा शुरू करें।
वैसे भी, मुझे कनवर्ट करने पर एक झटका होगा यह विशिष्ट ऐप (स्रोत कोड जार अच्छा होगा), और अगर मैं कुछ नया सीखता हूं तो इस प्रतिक्रिया को अपडेट करें।
स्रोत
2013-11-27 11:54:54
मुझे उम्मीद है कि वसंत के साथ, प्रवृत्ति WAR से JAR तक जाने के लिए अधिक से अधिक है। मैं बस एक के माध्यम से जा रहा हूं एक विकास अनुकूल pom.xml स्थापित करने के लिए परेशानी का अच्छा सौदा है जो मुझे springboot + gwt के साथ उत्पादक रूप से काम करने की अनुमति देगा। मैं निष्पादन योग्य जेएआर अवधारणा को सहानुभूति देता हूं, जीडब्ल्यूटी रन जेटी को अक्षम करने के डबल के माध्यम से और सुनिश्चित करना कि जीडब्ल्यूटी संकलन स्रोतों को सही ढंग से काम करने के लिए मेटा-आईएनएफ/संसाधनों में स्रोत रखता है एनजी देव समय। लेकिन हाँ, कुछ लोग जार से युद्ध में तैरने के लिए ज्यादातर जार से WAR में स्थानांतरित करना चाहते हैं उदा। ऐप इंजन लेकिन सामान्य वसंत बूट में एक जार के रूप में अच्छा है। – 99Sono
mutli युद्ध परियोजना के बारे में क्या? http://stackoverflow.com/questions/35632394/converting-multi-war-plplication-to-spring-boot – Yosefki
@ डेव-सीयर, नोट्स के लिए धन्यवाद, मुझे यह बहुत उपयोगी लगता है। मुझे पता है कि यह एक बहुत पुरानी पोस्ट है, मुझे हाल ही में स्प्रिंग बूट में अपेक्षाकृत स्थिर गैर स्प्रिंगएमवीसी वेब एप्लिकेशन माइग्रेट करने पर मूल्यांकन करने के लिए कहा गया था। आइडोस्कलिंग के साथ क्लाउड पर तैनात करने में सक्षम होने के लिए विचार निष्पादन योग्य जार शैली में परिवर्तित करना है। क्या आप सलाह दे सकते हैं कि इस पर आपकी राय क्या थी, पिछले 3 वर्षों में स्प्रिंग बूट पर कुछ भी बदल गया जो कि या उसके खिलाफ प्रभावित हो सकता है। – Venkat