2013-11-21 10 views
9

मैं Gradle कॉन्फ़िगर किया है new Maven Publisher Plugin का उपयोग कर परियोजना विरूपण साक्ष्य प्रकाशित करने के लिए, दुर्भाग्य से इस प्लगइन में उत्पन्न pom.xml निर्भरता के साथ समस्या यह है - निर्भरता compile बजाय के दायरे runtime है।प्रकाशन विरूपण साक्ष्य bintray को (Maven भंडार)

मेरे विन्यास इस तरह है:

gradle publish 

कितने साल (कार्य) रास्ते में इस लक्ष्य को हासिल करने के लिए:

apply plugin: 'maven-publish' 

publishing { 
    publications { 
     mavenCustom(MavenPublication) { 
      from components.java 
     } 
    } 
    repositories { 
     maven { 
      url "https://api.bintray.com/maven/codearte/public/fairyland" 
      credentials { 
       username = bintrayUser 
       password = bintrayKey 
      } 
     } 
    } 
} 

प्रकाशन एक आदेश के साथ आसान था? प्रोजेक्ट जारी होने पर प्रोजेक्ट टेजिंग को स्वचालित करना संभव है?

उत्तर

6

ठीक है, मैं यह पता लगा: आदेश के साथ

apply plugin: 'maven' 

uploadArchives { 
    repositories { 
     mavenDeployer { 
      name = 'Codearte Public Repository' 
      repository(id: 'codearte-repository', url: 'https://api.bintray.com/maven/codearte/public/fairyland'){ 
       authentication(userName: bintrayUser, password: bintrayKey) 
     } 
    } 
} 

अपलोड करना

gradle uploadArchives 
+4

मैं भी आप [bintray Gradle प्लगइन] पर एक नज़र डालें सुझाव देंगे (https: //bintray.com/jfrog/jfrog-jars/grad le-bintray-प्लगइन)। यह बिंट्रे को बहुत आसान बनाता है। – JBaruch

3

तथ्य यह है कि सभी पीओएम निर्भरताओं में runtime गुंजाइश maven-publish प्लगइन सेते हुए नई की एक ज्ञात सीमा है। जब तक यह ठीक नहीं हो जाता है, तो आप publication.pom.withXml हुक का उपयोग कर इसे स्वयं ठीक कर सकते हैं, या maven प्लगइन पर वापस आ सकते हैं। दोनों प्लगइन्स Gradle User Guide में प्रलेखित हैं।

टैगिंग एक पूरी तरह से अलग सवाल है। आप या तो तीसरे पक्ष के ग्रैडल एससीएम प्लगइन में से एक का उपयोग कर सकते हैं या कमांड लाइन टूल पर कॉल कर सकते हैं (उदा। Exec कार्य के साथ)।

+2

आप pom.withXml का एक उदाहरण दिखा सकते हैं? – BrunoJCM

+2

मेरी राय में नया ग्रेडल 'maven-plugin' अब नया नहीं है, लेकिन समस्या अभी भी मौजूद है। – MariuszS

+4

क्या यह "नया, इनक्यूबेटिंग" प्लगइन कभी खत्म होने जा रहा है? –

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