2010-05-23 19 views
9

पर मैं ग्रहण 3.5, मेवेन 2, एम 2clipse और टोमकैट 6 का उपयोग कर रहा हूं। इसलिए मैं आर्केटाइप वेबपैप के लिए मेवेन प्रोजेक्ट बना रहा हूं।ग्रहण और मेवेन के साथ बनाया गया प्रोजेक्ट तैनाती, टॉमकैट

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> 
    <modelVersion>4.0.0</modelVersion> 
    <groupId>com.itransition</groupId> 
    <artifactId>hello</artifactId> 
    <packaging>war</packaging> 
    <version>0.0.1-SNAPSHOT</version> 
    <name>hello Maven Webapp</name> 
    <url>http://maven.apache.org</url> 

    <!-- tools.jar dependency -->  
    <profiles> 
     <profile> 
      <id>default-tools.jar</id> 
      <activation> 
       <property> 
        <name>java.vendor</name> 
        <value>Sun Microsystems Inc.</value> 
       </property> 
      </activation> 
      <dependencies> 
       <dependency> 
        <groupId>com.sun</groupId> 
        <artifactId>tools</artifactId> 
        <version>1.5.0</version> 
        <scope>system</scope> 
        <systemPath>${java.home}/../lib/tools.jar</systemPath> 
       </dependency> 
      </dependencies> 
     </profile> 
    </profiles> 
    <dependencies> 
     <dependency> 
      <groupId>junit</groupId> 
      <artifactId>junit</artifactId> 
      <version>3.8.1</version> 
      <scope>test</scope> 
     </dependency> 
     <dependency> 
      <groupId>org.apache.struts</groupId> 
      <artifactId>struts2-core</artifactId> 
      <version>2.1.8.1</version> 
     </dependency> 
    </dependencies> 

    <build> 
     <finalName>hello</finalName> 
    </build> 
</project> 

तो फिर मैं बिलाव के लिए अपने वेब अनुप्रयोग को तैनात करना चाहते हैं: यह pom.xml है। मुझे क्या करना है? मेवेन इंस्टॉल मदद नहीं करते हैं। लेकिन अगर मैं मैवेन इंस्टॉल द्वारा युद्ध बनाता हूं, तो मैं इसे ग्रहण करने के लिए आयात कर सकता हूं और इसे सर्वर पॉपअप में "जोड़ें और हटाएं ..." द्वारा टोमकैट पर तैनात कर सकता हूं।

+1

बीटीडब्ल्यू, यह डिफ़ॉल्ट-उपकरण क्या है .jar प्रोफाइल ?! –

उत्तर

6

इस समस्या को मेवेन के लिए टॉमकैट प्लगइन का उपयोग करके हल किया जा सकता है। इसके मुखपृष्ठ को प्लगइन के configuration और deployment of war files से संबंधित व्यापक दस्तावेज मिला है।

+1

बेवकूफ सवाल के लिए खेद है, लेकिन मैं इस प्लगइन को कैसे प्राप्त कर सकता हूं? मुझे कोई डाउनलोड पेज नहीं मिला है। – user348267

+3

कोई समस्या नहीं है। जब आप अपनी pom.xml फ़ाइल में प्लगइन कॉन्फ़िगरेशन जोड़ते हैं, तो मैवेन प्लगइन और इसकी निर्भरताओं को स्वचालित रूप से डाउनलोड करेगा। // स्थानीय होस्ट: 8080/प्रबंधक pkainulainen

+0

तो मैं pom.xml करने org.codehaus.mojo बिल्ला-Maven-प्लगइन <विन्यास> http जोड़ने फिर चलाने "mvn बिल्ला: तैनात", और [जानकारी] करने के लिए http युद्ध परिनियोजित: // स्थानीय होस्ट: 8080/हैलो [जानकारी] [ERROR] BUILD त्रुटि +०१२३५१६४१०६[INFO] [INFO] टॉमकैट प्रबंधक एंबेडेड त्रुटि का आह्वान नहीं कर सकता: सर्वर ने HTTP प्रतिक्रिया कोड लौटाया: 403 यूआरएल के लिए: http: // localhost: 8080/प्रबंधक/तैनाती? पथ =% 2 फेहेलो और युद्ध = – user348267

3

So then i want to deploy my web application to Tomcat. What I need to do? Maven install don't help. But if I create war by Maven install, i can import it to eclipse and deploy it to Tomcat by "Add and remove..." in server popup.

आप m2eclipse उपयोग कर रहे हैं के बाद से, मेरी सिफारिश अपने आवेदन डब्ल्यूटीपी का उपयोग कर तैनात करने के लिए किया जाएगा। आप यह मानते हुए डब्ल्यूटीपी सुविधा स्थापित (m2eclipse extras से) और बिलाव सर्वर, के रूप में सिर्फ राइट क्लिक करें अपनी परियोजना पर और भागो> सर्वर पर चलाने के लिए चयन करें ...

एक अन्य विकल्प होगा कॉन्फ़िगर किया गया के लिए Maven एकीकरण है जेटी पर अपना आवेदन चलाने के लिए (हाँ, मुझे पता है कि यह वह नहीं है जिसे आप पूछ रहे हैं लेकिन यदि आप डब्ल्यूटीपी का उपयोग नहीं करना चाहते हैं तो यह बहुत मान्य विकल्प है)। एक एम्बेडेड जेट्टी सर्वर प्रारंभ और उस पर अपने आवेदन को तैनात करने के

<project> 
    ... 
    <build> 
    ... 
    <plugins> 
     ... 
     <plugin> 
     <groupId>org.mortbay.jetty</groupId> 
     <artifactId>maven-jetty-plugin</artifactId> 
     <version>6.1.10</version> 
     </plugin> 
    </plugins> 
    </build> 
</project> 

और बस चलाने mvn jetty:run: अपने पोम के लिए निम्न स्निपेट जोड़ें।

एक ही का उपयोग कर बिलाव के लिए प्राप्त किया जा सकता Tomcat Maven Plugin लेकिन जब तक आप एक दूरस्थ बिलाव (Usage पृष्ठ देखें) को तैनात करने के लिए चाहते हैं, तो मैं किसी भी लाभ Maven Jetty Plugin से अधिक नहीं दिख रहा।

विकास के दौरान, मैं पहला विकल्प (डब्ल्यूटीपी के साथ तैनाती) का उपयोग करता हूं।

+0

जब मैं डब्ल्यूटीपी के साथ आवेदन तैनात करता हूं, तो मेरे पास पृष्ठों पर 404 त्रुटि होती है। – user348267

+0

@fatkh आपको कहीं और समस्या है या आप कुछ गलत कर रहे हैं लेकिन मैं गारंटी देता हूं कि यह हमारे बाकी हिस्सों के लिए काम करता है। –

4

पता चला कि टॉमकैट प्रबंधक यूआरएल (मैं टॉमकैट 6.0 का उपयोग कर रहा हूं) http://localhost:8080/manager/html है, जबकि एमवीएन टॉमकैट प्लगइन द्वारा उपयोग किया जाने वाला डिफ़ॉल्ट यूआरएल में प्रबंधक पर रुक जाता है। यूआरएल एक विन्यास पैरामीटर के रूप में अपने pom.xml करने के लिए निर्दिष्ट जोड़ें - (अधिक जानकारी के http://mojo.codehaus.org/tomcat-maven-plugin/configuration.html के लिए इस यूआरएल देखें) और देखा यह काम करता है ...

Tomcat7 साथ

, मैंने पाया मैं http://localhost:8080/manager/htmlके रूप में URL सेट करने की जरूरत है और प्रबंधक-gui भूमिका के साथ उपयोगकर्ता नाम का उपयोग करें। हालांकि, प्रबंधक-स्क्रिप्ट भूमिका के साथ उपयोगकर्ता नाम का उपयोग करते हुए, URL http://localhost:8080/manager/text के साथ भी काम करता है और अधिक उपयुक्त है। प्रबंधक-स्क्रिप्ट भूमिका चींटी/मेवेन स्क्रिप्ट के लिए जाने का डिज़ाइन किया गया तरीका है।

5

यह 2 तरीकों से किया जा सकता है।

  1. URL नीचे देखें

    http://www.mkyong.com/maven/how-to-create-a-web-application-project-with-maven/

  2. ग्रहण के साथ Maven परियोजना बनाएँ और कमांड प्रॉम्प्ट (या) टर्मिनल

  3. mvn ग्रहण से परियोजना फ़ोल्डर ढूँढें: ग्रहण -Dwtpversion = 2 ।0 [प्रोजेक्ट फ़ोल्डर में]

From Terminal locate your webproject

  1. Refersh ग्रहण परियोजना।

  2. अब आप तैनाती को जोड़ और निकाल सकते हैं।

Eclipse ScreenPrint

0

आप चाहते हैं कि आपके war फ़ाइल maven द्वारा बनाई गई हैं, बिल्ला सर्वर पर तैनात सीधे तो यह tomcat deployment configuration आप मदद कर सकते हैं होना चाहिए।

संबंधित मुद्दे