2011-01-31 10 views
6

मुझे केवल एक निर्भरता और इसकी सभी ट्रांजिटिव निर्भरताओं को एक निर्दिष्ट फ़ोल्डर में कॉपी करने की आवश्यकता है। मुझे पता है कि मैं "बहिष्कृत आर्टिफैक्ट आईडी" के साथ कलाकृतियों को बाहर कर सकता हूं, लेकिन मुझे उन कलाकृतियों की पारगमन निर्भरताओं को भी बाहर करने की आवश्यकता है, जो जाहिर है, "आर्टिफैक्ट आईडी" नहीं करते हैं।मेवेन-निर्भरता-प्लगइन, प्रति-निर्भरताएं: कुछ आर्टिफैक्ट आईडी और उनकी निर्भरताओं को छोड़ दें

क्या ऐसा करने का कोई तरीका है?

+0

क्या आपको इसका समाधान मिला? मुझे एक ही समस्या का सामना करना पड़ रहा है और मैं समाधान खोजने में असमर्थ हूं। – vanval

उत्तर

1

excludeTransitivetrue पर सेट करने के बारे में कैसे?

+1

मुझे केवल एक निर्भरता के लिए पारगम्य निर्भरताओं की आवश्यकता है। मैं अन्य निर्भरताओं और उनके transitive deps को बाहर करना चाहता हूं। – calin014

+0

मुझे इसकी ज़रूरत है! मेरी स्थिति में मुझे संक्रमणकारी निर्भरताओं की आवश्यकता नहीं है! धन्यवाद – eleforest

6

ऐसा लगता है कि Maven निर्भरता प्लगइन नहीं इस के लिए बनाया गया के रूप में वे "WONTFIX" और another request के बाद से 2007

हालांकि खुली किया गया है के रूप में इस कार्यशीलता के लिए one request बंद कर दिया, आप Maven-विधानसभा का उपयोग कर सकते है एक समान कार्य पूरा करने के लिए प्लगइन।

नीचे मैंने दो नमूना पीओएम संलग्न किए हैं। पहला आश्रित प्रोजेक्ट है (जिसे आप प्रतिलिपि बनाना चाहते थे) जिसकी खुद की एक निर्भरता है (उदाहरण के लिए)। दूसरा कुल परियोजना है जहां आप अन्य परियोजना की प्रतिलिपि बना रहे हैं और इसकी निर्भरता है। मैंने असेंबली डिस्प्टर फ़ाइल भी संलग्न की है जिसका उपयोग आप निर्भरता की प्रतिलिपि बनाने के लिए करेंगे।

अनिवार्य रूप से, यह पहली परियोजना की प्रतिलिपि बनायेगा और यह दूसरी परियोजना की लक्ष्य/dest (कॉन्फ़िगर करने योग्य) निर्देशिका की निर्भरता है।

पहले पोम (निर्भर परियोजना): /sample-dependency/pom.xml

<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/xsd/maven-4.0.0.xsd"> 
    <modelVersion>4.0.0</modelVersion> 
    <groupId>sample-dependency</groupId> 
    <artifactId>sample-dependency</artifactId> 
    <version>0.0.1-SNAPSHOT</version> 
    <dependencies> 
    <dependency> 
     <groupId>commons-lang</groupId> 
     <artifactId>commons-lang</artifactId> 
     <version>2.5</version> 
    </dependency> 
    </dependencies> 
</project> 

दूसरा पोम (एकत्रित परियोजना): /sample-dependency-aggregator/pom.xml

<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/xsd/maven-4.0.0.xsd"> 
    <modelVersion>4.0.0</modelVersion> 
    <groupId>sample-dependency-aggregator</groupId> 
    <artifactId>sample-dependency-aggregator</artifactId> 
    <version>0.0.1-SNAPSHOT</version> 
    <name>sample-dependency-aggregator</name> 
    <build> 
     <plugins> 
      <plugin> 
       <groupId>org.apache.maven.plugins</groupId> 
       <artifactId>maven-assembly-plugin</artifactId> 
       <version>2.2</version> 
       <executions> 
        <execution> 
         <id>aggregate</id> 
         <phase>package</phase> 
         <goals> 
          <goal>single</goal> 
         </goals> 
         <configuration> 
          <descriptor>src/main/assembly/default.xml</descriptor> 
         </configuration> 
        </execution> 
       </executions> 
       <configuration> 
        <attach>false</attach> 
        <finalName>dest</finalName> 
        <appendAssemblyId>false</appendAssemblyId> 
       </configuration> 
      </plugin> 
     </plugins> 
    </build> 
    <dependencies> 
     <dependency> 
      <groupId>sample-dependency</groupId> 
      <artifactId>sample-dependency</artifactId> 
      <version>0.0.1-SNAPSHOT</version> 
     </dependency> 
    </dependencies> 
</project> 

असेंबली डिस्क्रिप्टर:/नमूना- निर्भरता-aggregator/src/main/assembly/default.xml

<?xml version="1.0" encoding="UTF-8"?> 
<assembly xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.1" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.1 http://maven.apache.org/xsd/assembly-1.1.1.xsd "> 
    <id>default</id> 
    <formats> 
     <format>dir</format> 
    </formats> 
    <includeBaseDirectory>false</includeBaseDirectory> 
    <dependencySets> 
     <dependencySet> 
      <outputDirectory>/</outputDirectory> 
      <includes> 
       <include>sample-dependency:sample-dependency</include> 
      </includes> 
      <useTransitiveDependencies>true</useTransitiveDependencies> 
      <useTransitiveFiltering>true</useTransitiveFiltering> 
     </dependencySet> 
    </dependencySets> 


</assembly> 
+0

दिलचस्प उत्तर, लेकिन लेखक * अपनी विशिष्ट निर्भरता के साथ एक विशिष्ट निर्भरता को * बाहर करना चाहता है, जिसमें एक शामिल नहीं है। असेंबली प्लगइन के साथ यह संभव है? – firtydank

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