Build issue "Failed to execute goal org.apache.felix:maven-scr-plugin:1.21.0:scr" with AEM | Community
Skip to main content
April 20, 2018
Solved

Build issue "Failed to execute goal org.apache.felix:maven-scr-plugin:1.21.0:scr" with AEM

  • April 20, 2018
  • 2 replies
  • 5223 views

Hello

I ran -PautoInstallPackage clean install -X command on AEM project.

Getting following exception :

[ERROR] Failed to execute goal org.apache.felix:maven-scr-plugin:1.21.0:scr (generate-scr-scrdescriptor) on project acquia-connectors-bundle: SCR Descriptor parsing had failures (see log) -> [Help 1]

org.apache.maven.lifecycle.LifecycleExecutionException: Failed to execute goal org.apache.felix:maven-scr-plugin:1.21.0:scr (generate-scr-scrdescriptor) on project acquia-connectors-bundle: SCR Descriptor parsing had failures (see log)

at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:212)

at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:153)

at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:145)

at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:116)

at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:80)

at org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build(SingleThreadedBuilder.java:51)

at org.apache.maven.lifecycle.internal.LifecycleStarter.execute(LifecycleStarter.java:120)

at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:355)

at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:155)

at org.apache.maven.cli.MavenCli.execute(MavenCli.java:584)

at org.apache.maven.cli.MavenCli.doMain(MavenCli.java:216)

at org.apache.maven.cli.MavenCli.main(MavenCli.java:160)

at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)

at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)

at java.lang.reflect.Method.invoke(Method.java:497)

at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.java:289)

at org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:229)

at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:415)

at org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:356)

Caused by: org.apache.maven.plugin.MojoFailureException: SCR Descriptor parsing had failures (see log)

at org.apache.felix.scrplugin.mojo.SCRDescriptorMojo.execute(SCRDescriptorMojo.java:251)

at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:132)

at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:208)

... 19 more

Caused by: org.apache.felix.scrplugin.SCRDescriptorFailureException: SCR Descriptor parsing had failures (see log)

at org.apache.felix.scrplugin.SCRDescriptorGenerator.execute(SCRDescriptorGenerator.java:223)

at org.apache.felix.scrplugin.mojo.SCRDescriptorMojo.execute(SCRDescriptorMojo.java:237)

... 21 more

[ERROR]

[ERROR]

[ERROR] For more information about the errors and possible solutions, please read the following articles:

[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MojoFailureException

[ERROR]

[ERROR] After correcting the problems, you can resume the build with the command

[ERROR]   mvn <goals> -rf :acquia-connectors-bundle

Also find below pom.xml :

<?xml version="1.0" encoding="UTF-8"?>

<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>

    <!-- ====================================================================== -->

    <!-- P A R E N T P R O J E C T D E S C R I P T I O N -->

    <!-- ====================================================================== -->

    <groupId>com.acquia</groupId>

    <artifactId>acquia-connectors</artifactId>

    <version>1.0-SNAPSHOT</version>

    <packaging>pom</packaging>

    <name>Acquia Connectors - Reactor Project</name>

    <description>Acquia Connectors for AEM brings the Acquia Platform to your AEM environment.  This package provides connectivity to Acquia's ContentHub, Lift Recommend and ContextDB suite of products, to deliver optimized omnichannel experiences across your enterprise platforms.</description>

    <prerequisites>

        <maven>3.2.5</maven>

    </prerequisites>

    <!-- ====================================================================== -->

    <!-- P R O P E R T I E S -->

    <!-- ====================================================================== -->

    <properties>

        <crx.host>localhost</crx.host>

        <crx.port>14502</crx.port>

        <crx.username>admin</crx.username>

        <crx.password>admin</crx.password>

        <publish.crx.host>localhost</publish.crx.host>

        <publish.crx.port>14503</publish.crx.port>

        <publish.crx.username>admin</publish.crx.username>

        <publish.crx.password>admin</publish.crx.password>

        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>

        <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>

    </properties>

    <dependencyManagement>

        <dependencies>

            <dependency>

                <groupId>org.osgi</groupId>

                <artifactId>org.osgi.core</artifactId>

                <version>4.2.0</version>

                <scope>provided</scope>

            </dependency>

            <dependency>

                <groupId>org.osgi</groupId>

                <artifactId>org.osgi.compendium</artifactId>

                <version>4.2.0</version>

                <scope>provided</scope>

            </dependency>

         

            <dependency>

            <groupId>org.apache.felix</groupId>

            <artifactId>org.apache.felix.scr.annotations</artifactId>

            <version>1.9.12</version>

            <scope>provided</scope>

        </dependency>

            <dependency>

                <groupId>biz.aQute</groupId>

                <artifactId>bndlib</artifactId>

                <version>1.43.0</version>

                <scope>provided</scope>

            </dependency>

            <dependency>

                <groupId>org.slf4j</groupId>

                <artifactId>slf4j-api</artifactId>

                <version>1.5.10</version>

                <scope>provided</scope>

            </dependency>

            <dependency>

                <groupId>javax.servlet</groupId>

                <artifactId>servlet-api</artifactId>

                <version>2.5</version>

                <scope>provided</scope>

            </dependency>

            <dependency>

                <groupId>javax.jcr</groupId>

                <artifactId>jcr</artifactId>

                <version>2.0</version>

                <scope>provided</scope>

            </dependency>

            <dependency>

                <groupId>org.apache.sling</groupId>

                <artifactId>org.apache.sling.api</artifactId>

                <version>2.8.0</version>

                <scope>provided</scope>

            </dependency>

            <dependency>

                <groupId>org.apache.sling</groupId>

                <artifactId>org.apache.sling.jcr.api</artifactId>

                <version>2.1.0</version>

                <scope>provided</scope>

            </dependency>

            <dependency>

                <groupId>junit</groupId>

                <artifactId>junit</artifactId>

                <version>4.8.1</version>

                <scope>test</scope>

            </dependency>

        </dependencies>

    </dependencyManagement>

    <!--

        Inclusion of repositories in POMs is controversial, to say the least.

        It would be best if you proxied the Adobe repository using a Maven

        Repository Manager. Once you do that, remove these sections.

     -->

    <repositories>

        <repository>

            <id>adobe</id>

            <name>Adobe Public Repository</name>

            <url>http://repo.adobe.com/nexus/content/groups/public/</url>

            <layout>default</layout>

        </repository>

    </repositories>

    <pluginRepositories>

        <pluginRepository>

            <id>adobe</id>

            <name>Adobe Public Repository</name>

            <url>http://repo.adobe.com/nexus/content/groups/public/</url>

            <layout>default</layout>

        </pluginRepository>

    </pluginRepositories>

    <build>

        <pluginManagement>

            <plugins>

    

            <plugin>

                    <groupId>org.apache.felix</groupId>

                    <artifactId>maven-scr-plugin</artifactId>

                    <version>1.21.0</version>

                    <extensions>true</extensions>

                     <configuration>               

                </configuration>              

                    <executions>

                        <execution>

                            <id>generate-scr-scrdescriptor</id>

                            <goals>

                                <goal>scr</goal>

                            </goals>

                           

                        </execution>

                    </executions>

                </plugin>

             

                <plugin>

                <groupId>org.apache.felix</groupId>

                <artifactId>maven-bundle-plugin</artifactId>

                <extensions>true</extensions>

                <version>2.5.3</version>

            </plugin>

             <plugin>

                    <groupId>org.apache.maven.plugins</groupId>

                    <artifactId>maven-compiler-plugin</artifactId>

                    <version>3.1</version>

                    <inherited>true</inherited>

                    <configuration>

                    <source>1.8</source>

                    <target>1.8</target>

                </configuration>

                </plugin>

                <plugin>

                    <groupId>org.apache.maven.plugins</groupId>

                    <artifactId>maven-resources-plugin</artifactId>

                    <version>2.6</version>

                </plugin>

                <plugin>

                    <groupId>org.apache.maven.plugins</groupId>

                    <artifactId>maven-deploy-plugin</artifactId>

                    <version>2.7</version>

                </plugin>

                <plugin>

                    <groupId>org.apache.maven.plugins</groupId>

                    <artifactId>maven-install-plugin</artifactId>

                    <version>2.4</version>

                </plugin>

                <plugin>

                    <groupId>org.apache.maven.plugins</groupId>

                    <artifactId>maven-surefire-plugin</artifactId>

                    <version>2.14.1</version>

                </plugin>

                <plugin>

                    <groupId>org.apache.maven.plugins</groupId>

                    <artifactId>maven-javadoc-plugin</artifactId>

                    <version>2.9</version>

                </plugin>

                <plugin>

                    <groupId>org.apache.sling</groupId>

                    <artifactId>maven-sling-plugin</artifactId>

                    <version>2.1.0</version>

                    <configuration>

                        <username>${crx.username}</username>

                        <password>${crx.password}</password>

                    </configuration>

                </plugin>

                <plugin>

                    <groupId>com.day.jcr.vault</groupId>

                    <artifactId>content-package-maven-plugin</artifactId>

                    <version>0.0.20</version>

                    <extensions>true</extensions>

                    <configuration>

                        <failOnError>true</failOnError>

                        <username>${crx.username}</username>

                        <password>${crx.password}</password>

                    </configuration>

                </plugin>

                <!--This plugin's configuration is used to store Eclipse

                    m2e settings only. It has no influence on the Maven build itself. -->

                <plugin>

                    <groupId>org.eclipse.m2e</groupId>

                    <artifactId>lifecycle-mapping</artifactId>

                    <version>1.0.0</version>

                    <configuration>

                        <lifecycleMappingMetadata>

                            <pluginExecutions>

                                <pluginExecution>

                                    <pluginExecutionFilter>

                                        <groupId>

                                            org.apache.felix

                                        </groupId>

                                        <artifactId>

                                            maven-scr-plugin

                                        </artifactId>

                                        <versionRange>

                                            [1.0.0,)

                                        </versionRange>

                                        <goals>

                                            <goal>scr</goal>

                                        </goals>

                                    </pluginExecutionFilter>

                                    <action>

                                        <ignore/>

                                    </action>

                                </pluginExecution>

                            </pluginExecutions>

                        </lifecycleMappingMetadata>

                    </configuration>

                </plugin>

            </plugins>

        </pluginManagement>

    </build>

    <profiles>

        <profile>

            <id>autoInstallBundle</id>

            <build>

                <plugins>

                    <plugin>

                        <groupId>org.apache.sling</groupId>

                        <artifactId>maven-sling-plugin</artifactId>

                        <executions>

                            <execution>

                                <id>install-bundle</id>

                                <goals>

                                    <goal>install</goal>

                                </goals>

                            </execution>

                        </executions>

                    </plugin>

                </plugins>

            </build>

        </profile>

    </profiles>

  <modules>

    <module>bundle</module>

    <module>content</module>

  </modules>

</project>

please let know the issue

This post is no longer active and is closed to new replies. Need help? Start a new post to ask your question.
Best answer by joerghoh

The problem is not the pom, but rather the use of SCR annotations in your code. Please check if the log contains more details.

Jörg

2 replies

smacdonald2008
Level 10
April 20, 2018

We have many articles that show you how to successfilly build AEM Projects. Please refer to these - depending on your AEM Version:

1. Adobe Experience Manager Help | Creating your first Adobe Experience Manager 6.2 Project using Adobe Maven Archetype 10

2. Creating an Adobe Experience Manager 6.3 Project using Adobe Maven Archetype 11

3. Creating an Adobe Experience Manager 6.3 Project using Adobe Maven Archetype 12

4. Creating an Adobe Experience Manager 6.4 Project using Adobe Maven Archetype 13

As for your issue - looks like there is an error in your code judging from this error message:

[ERROR] Failed to execute goal org.apache.felix:maven-scr-plugin:1.21.0:scr (generate-scr-scrdescriptor) on project acquia-connectors-bundle: SCR Descriptor parsing had failures (see log) -> [Help 1]

joerghoh
Adobe Employee
joerghohAdobe EmployeeAccepted solution
Adobe Employee
April 21, 2018

The problem is not the pom, but rather the use of SCR annotations in your code. Please check if the log contains more details.

Jörg