You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by da...@apache.org on 2019/01/14 08:21:03 UTC

[camel] branch master updated: CAMEL-13051: The camel-package-maven-plugin updated after the recent change with generating more component metafiles instead of having them in the source.

This is an automated email from the ASF dual-hosted git repository.

davsclaus pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/camel.git


The following commit(s) were added to refs/heads/master by this push:
     new e2a7498  CAMEL-13051: The camel-package-maven-plugin updated after the recent change with generating more component metafiles instead of having them in the source.
e2a7498 is described below

commit e2a7498f4683e4970f00c3fe413731916d605380
Author: Claus Ibsen <cl...@gmail.com>
AuthorDate: Mon Jan 14 08:43:26 2019 +0100

    CAMEL-13051: The camel-package-maven-plugin updated after the recent change with generating more component metafiles instead of having them in the source.
---
 camel-core/pom.xml                                 | 45 ++++------------------
 components/pom.xml                                 | 36 +++++++++++++++--
 .../maven/packaging/PackageComponentMojo.java      | 39 ++++++++-----------
 .../maven/packaging/PackageDataFormatMojo.java     | 31 +++++++--------
 .../camel/maven/packaging/PackageLanguageMojo.java | 31 +++++++--------
 .../camel/maven/packaging/PackageOtherMojo.java    | 30 ++++++---------
 6 files changed, 95 insertions(+), 117 deletions(-)

diff --git a/camel-core/pom.xml b/camel-core/pom.xml
index 6aaedc2..9eae541 100644
--- a/camel-core/pom.xml
+++ b/camel-core/pom.xml
@@ -425,54 +425,23 @@
         <groupId>org.apache.camel</groupId>
         <artifactId>camel-package-maven-plugin</artifactId>
         <version>${project.version}</version>
+        <configuration>
+          <!-- set to true to make build fail fast if missing documentation in docs files -->
+          <failFast>false</failFast>
+        </configuration>
         <executions>
           <execution>
-            <id>components</id>
-            <goals>
-              <goal>generate-components-list</goal>
-            </goals>
-            <phase>generate-resources</phase>
-          </execution>
-          <execution>
-            <id>eips</id>
+            <id>generate</id>
             <goals>
+              <goal>generate-jaxb-list</goal>
               <goal>generate-eips-list</goal>
-            </goals>
-            <phase>process-classes</phase>
-          </execution>
-          <!-- camel-core needs to generate dataformats after compilation -->
-          <execution>
-            <id>dataformats</id>
-            <goals>
+              <goal>generate-components-list</goal>
               <goal>generate-dataformats-list</goal>
-            </goals>
-            <phase>process-classes</phase>
-          </execution>
-          <!-- camel-core needs to generate languages after compilation -->
-          <execution>
-            <id>languages</id>
-            <goals>
               <goal>generate-languages-list</goal>
-            </goals>
-            <phase>process-classes</phase>
-          </execution>
-          <!-- camel-core needs to generate jaxb.index files -->
-          <execution>
-            <id>generate-jaxb-list</id>
-            <goals>
-              <goal>generate-jaxb-list</goal>
-            </goals>
-            <phase>process-classes</phase>
-          </execution>
-          <!-- camel-core needs to generate legal files -->
-          <execution>
-            <id>generate-legal</id>
-            <goals>
               <goal>generate-legal</goal>
             </goals>
             <phase>process-classes</phase>
           </execution>
-          <!-- camel-core needs to validate before packaging -->
           <execution>
             <id>validate</id>
             <goals>
diff --git a/components/pom.xml b/components/pom.xml
index 7de8e7a..7b5d005 100644
--- a/components/pom.xml
+++ b/components/pom.xml
@@ -311,12 +311,14 @@
         </configuration>
         <executions>
           <execution>
-            <id>prepare</id>
+            <id>generate</id>
             <goals>
-              <goal>prepare-components</goal>
+              <goal>generate-components-list</goal>
+              <goal>generate-dataformats-list</goal>
+              <goal>generate-languages-list</goal>
               <goal>generate-legal</goal>
             </goals>
-            <phase>generate-resources</phase>
+            <phase>process-classes</phase>
           </execution>
           <execution>
             <id>validate</id>
@@ -336,6 +338,34 @@
           </execution>
         </executions>
       </plugin>
+      <plugin>
+        <artifactId>maven-resources-plugin</artifactId>
+        <executions>
+          <execution>
+            <id>copy-generated-resources</id>
+            <goals>
+              <goal>resources</goal>
+            </goals>
+            <phase>process-classes</phase>
+            <configuration>
+              <resources>
+                <resource>
+                  <directory>${basedir}/target/generated/camel/components</directory>
+                </resource>
+                <resource>
+                  <directory>${basedir}/target/generated/camel/dataformats</directory>
+                </resource>
+                <resource>
+                  <directory>${basedir}/target/generated/camel/languages</directory>
+                </resource>
+                <resource>
+                  <directory>${basedir}/target/generated/camel/legal</directory>
+                </resource>
+              </resources>
+            </configuration>
+          </execution>
+        </executions>
+      </plugin>
     </plugins>
   </build>
 
diff --git a/tooling/maven/camel-package-maven-plugin/src/main/java/org/apache/camel/maven/packaging/PackageComponentMojo.java b/tooling/maven/camel-package-maven-plugin/src/main/java/org/apache/camel/maven/packaging/PackageComponentMojo.java
index 7cda938..cfa6e39 100644
--- a/tooling/maven/camel-package-maven-plugin/src/main/java/org/apache/camel/maven/packaging/PackageComponentMojo.java
+++ b/tooling/maven/camel-package-maven-plugin/src/main/java/org/apache/camel/maven/packaging/PackageComponentMojo.java
@@ -94,29 +94,24 @@ public class PackageComponentMojo extends AbstractMojo {
 
         StringBuilder buffer = new StringBuilder();
         int count = 0;
-        for (Resource r : project.getBuild().getResources()) {
-            File f = new File(r.getDirectory());
-            if (!f.exists()) {
-                f = new File(project.getBasedir(), r.getDirectory());
-            }
-            f = new File(f, "META-INF/services/org/apache/camel/component");
-
-            if (f.exists() && f.isDirectory()) {
-                File[] files = f.listFiles();
-                if (files != null) {
-                    for (File file : files) {
-                        // skip directories as there may be a sub .resolver directory
-                        if (file.isDirectory()) {
-                            continue;
-                        }
-                        String name = file.getName();
-                        if (name.charAt(0) != '.') {
-                            count++;
-                            if (buffer.length() > 0) {
-                                buffer.append(" ");
-                            }
-                            buffer.append(name);
+
+        File f = new File(project.getBasedir(), "target/classes");
+        f = new File(f, "META-INF/services/org/apache/camel/component");
+        if (f.exists() && f.isDirectory()) {
+            File[] files = f.listFiles();
+            if (files != null) {
+                for (File file : files) {
+                    // skip directories as there may be a sub .resolver directory
+                    if (file.isDirectory()) {
+                        continue;
+                    }
+                    String name = file.getName();
+                    if (name.charAt(0) != '.') {
+                        count++;
+                        if (buffer.length() > 0) {
+                            buffer.append(" ");
                         }
+                        buffer.append(name);
                     }
                 }
             }
diff --git a/tooling/maven/camel-package-maven-plugin/src/main/java/org/apache/camel/maven/packaging/PackageDataFormatMojo.java b/tooling/maven/camel-package-maven-plugin/src/main/java/org/apache/camel/maven/packaging/PackageDataFormatMojo.java
index 2437834..d7f2361 100644
--- a/tooling/maven/camel-package-maven-plugin/src/main/java/org/apache/camel/maven/packaging/PackageDataFormatMojo.java
+++ b/tooling/maven/camel-package-maven-plugin/src/main/java/org/apache/camel/maven/packaging/PackageDataFormatMojo.java
@@ -114,24 +114,19 @@ public class PackageDataFormatMojo extends AbstractMojo {
 
         StringBuilder buffer = new StringBuilder();
         int count = 0;
-        for (Resource r : project.getBuild().getResources()) {
-            File f = new File(r.getDirectory());
-            if (!f.exists()) {
-                f = new File(project.getBasedir(), r.getDirectory());
-            }
-            f = new File(f, "META-INF/services/org/apache/camel/dataformat");
-
-            if (f.exists() && f.isDirectory()) {
-                File[] files = f.listFiles();
-                if (files != null) {
-                    for (File file : files) {
-                        String javaType = readClassFromCamelResource(file, buffer, buildContext);
-                        if (!file.isDirectory() && file.getName().charAt(0) != '.') {
-                            count++;
-                        }
-                        if (javaType != null) {
-                            javaTypes.put(file.getName(), javaType);
-                        }
+
+        File f = new File(project.getBasedir(), "target/classes");
+        f = new File(f, "META-INF/services/org/apache/camel/dataformat");
+        if (f.exists() && f.isDirectory()) {
+            File[] files = f.listFiles();
+            if (files != null) {
+                for (File file : files) {
+                    String javaType = readClassFromCamelResource(file, buffer, buildContext);
+                    if (!file.isDirectory() && file.getName().charAt(0) != '.') {
+                        count++;
+                    }
+                    if (javaType != null) {
+                        javaTypes.put(file.getName(), javaType);
                     }
                 }
             }
diff --git a/tooling/maven/camel-package-maven-plugin/src/main/java/org/apache/camel/maven/packaging/PackageLanguageMojo.java b/tooling/maven/camel-package-maven-plugin/src/main/java/org/apache/camel/maven/packaging/PackageLanguageMojo.java
index 031d464..2e80c8c 100644
--- a/tooling/maven/camel-package-maven-plugin/src/main/java/org/apache/camel/maven/packaging/PackageLanguageMojo.java
+++ b/tooling/maven/camel-package-maven-plugin/src/main/java/org/apache/camel/maven/packaging/PackageLanguageMojo.java
@@ -114,24 +114,19 @@ public class PackageLanguageMojo extends AbstractMojo {
 
         StringBuilder buffer = new StringBuilder();
         int count = 0;
-        for (Resource r : project.getBuild().getResources()) {
-            File f = new File(r.getDirectory());
-            if (!f.exists()) {
-                f = new File(project.getBasedir(), r.getDirectory());
-            }
-            f = new File(f, "META-INF/services/org/apache/camel/language");
-
-            if (f.exists() && f.isDirectory()) {
-                File[] files = f.listFiles();
-                if (files != null) {
-                    for (File file : files) {
-                        String javaType = readClassFromCamelResource(file, buffer, buildContext);
-                        if (!file.isDirectory() && file.getName().charAt(0) != '.') {
-                            count++;
-                        }
-                        if (javaType != null) {
-                            javaTypes.put(file.getName(), javaType);
-                        }
+
+        File f = new File(project.getBasedir(), "target/classes");
+        f = new File(f, "META-INF/services/org/apache/camel/language");
+        if (f.exists() && f.isDirectory()) {
+            File[] files = f.listFiles();
+            if (files != null) {
+                for (File file : files) {
+                    String javaType = readClassFromCamelResource(file, buffer, buildContext);
+                    if (!file.isDirectory() && file.getName().charAt(0) != '.') {
+                        count++;
+                    }
+                    if (javaType != null) {
+                        javaTypes.put(file.getName(), javaType);
                     }
                 }
             }
diff --git a/tooling/maven/camel-package-maven-plugin/src/main/java/org/apache/camel/maven/packaging/PackageOtherMojo.java b/tooling/maven/camel-package-maven-plugin/src/main/java/org/apache/camel/maven/packaging/PackageOtherMojo.java
index 704e013..e4cdaa6 100644
--- a/tooling/maven/camel-package-maven-plugin/src/main/java/org/apache/camel/maven/packaging/PackageOtherMojo.java
+++ b/tooling/maven/camel-package-maven-plugin/src/main/java/org/apache/camel/maven/packaging/PackageOtherMojo.java
@@ -89,24 +89,18 @@ public class PackageOtherMojo extends AbstractMojo {
     public static void prepareOthers(Log log, MavenProject project, MavenProjectHelper projectHelper, File otherOutDir,
                                      File schemaOutDir, BuildContext buildContext) throws MojoExecutionException {
 
-        // are there any components, data formats or languages?
-        for (Resource r : project.getBuild().getResources()) {
-            File f = new File(r.getDirectory());
-            if (!f.exists()) {
-                f = new File(project.getBasedir(), r.getDirectory());
-            }
-            File comp = new File(f, "META-INF/services/org/apache/camel/component");
-            if (comp.exists() && comp.isDirectory()) {
-                return;
-            }
-            File df = new File(f, "META-INF/services/org/apache/camel/dataformat");
-            if (df.exists() && df.isDirectory()) {
-                return;
-            }
-            File lan = new File(f, "META-INF/services/org/apache/camel/language");
-            if (lan.exists() && lan.isDirectory()) {
-                return;
-            }
+        File f = new File(project.getBasedir(), "target/classes");
+        File comp = new File(f, "META-INF/services/org/apache/camel/component");
+        if (comp.exists() && comp.isDirectory()) {
+            return;
+        }
+        File df = new File(f, "META-INF/services/org/apache/camel/dataformat");
+        if (df.exists() && df.isDirectory()) {
+            return;
+        }
+        File lan = new File(f, "META-INF/services/org/apache/camel/language");
+        if (lan.exists() && lan.isDirectory()) {
+            return;
         }
 
         // okay none of those then this is a other kind of artifact