Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Deploying AEM with maven (Error)

I am trying to deploy AEM with maven, so I follow this tutorial. When I run the command mvn clear package, I get the following error:

C:\workspace\myproject\app>mvn clean package
[INFO] Scanning for projects...
[WARNING] The POM for com.day.jcr.vault:maven-vault-plugin:jar:0.0.10 is missing
, no dependency information available
[ERROR] The build could not read 1 project -> [Help 1]
[ERROR]
[ERROR]   The project com.uum:app:1-SNAPSHOT (C:\workspace\myproject\app\pom.xml
) has 3 errors
[ERROR]     Unresolveable build extension: Plugin com.day.jcr.vault:maven-vault-
plugin:0.0.10 or one of its dependencies could not be resolved: Failure to find
com.day.jcr.vault:maven-vault-plugin:jar:0.0.10 in http://repo.maven.apache.org/
maven2 was cached in the local repository, resolution will not be reattempted un
til the update interval of central has elapsed or updates are forced -> [Help 2]

[ERROR]     Unknown packaging: content-package @ line 12, column 16
[ERROR]     'dependencies.dependency.groupId' for :core:jar is missing. @ line 1
8, column 22
[ERROR]
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e swit
ch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR]
[ERROR] For more information about the errors and possible solutions, please rea
d the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/ProjectBuildin
gException
[ERROR] [Help 2] http://cwiki.apache.org/confluence/display/MAVEN/PluginResoluti
onException

my myproject/app/pom.xml looks like this:

<?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>
    <parent>
        <groupId>com.uum</groupId>
        <artifactId>parent</artifactId>
        <relativePath>../parent/pom.xml</relativePath>
        <version>1-SNAPSHOT</version>
    </parent>

    <artifactId>app</artifactId>
    <packaging>content-package</packaging>

    <name>Sample Application package</name>

    <dependencies>
        <dependency>
            <groupId><!-- {groupId} --></groupId>
            <artifactId>core</artifactId>
            <version>${project.version}</version>                       
        </dependency>

        <!-- add additional dependencies -->
    </dependencies>

    <build>
        <resources>
            <resource>
                <directory>${basedir}/META-INF</directory>
                <targetPath>../vault-work/META-INF</targetPath>
            </resource>
            <resource>
                <directory>${basedir}/jcr_root</directory>
                <excludes>
                    <exclude>**/.vlt</exclude>
                    <exclude>**/.vltignore</exclude>
                    <exclude>**/*.iml</exclude>
                    <exclude>**/.classpath</exclude>
                    <exclude>**/.project</exclude>
                    <exclude>**/.DS_Store</exclude>
                    <exclude>**/target/**</exclude>
                    <exclude>libs/**</exclude>
                </excludes>
            </resource>
        </resources>

        <plugins>

            <plugin>
                <groupId>com.day.jcr.vault</groupId>
                <artifactId>maven-vault-plugin</artifactId>
                <extensions>true</extensions>
                <configuration>
                    <group>Sample</group>
                    <requiresRoot>true</requiresRoot>

                    <install>true</install>
                    <verbose>true</verbose>

                    <packageFile>${project.build.directory}/${project.artifactId}-${project.version}.zip</packageFile>

                    <version>${project.version}</version>
                    <properties>
                        <acHandling>overwrite</acHandling>
                    </properties>

                    <embeddeds>
                        <embedded>
                            <groupId><!-- {groupId} --></groupId>
                            <artifactId>core</artifactId>
                            <target><!-- {install path in the repository (e.g. /apps/myproject/install)} --></target>
                        </embedded>
                    </embeddeds>
                </configuration>
            </plugin>

        </plugins>
    </build>

    <profiles>
        <profile>
            <id>installPackages</id>
            <activation>
            </activation>
            <build>
                <plugins>
                    <plugin>
                        <groupId>com.day.jcr.vault</groupId>
                        <artifactId>maven-vault-plugin</artifactId>
                        <executions>
                            <execution>
                                <id>install-package</id>
                                <goals>
                                    <goal>install</goal>
                                </goals>
                            </execution>
                        </executions>
                    </plugin>
                </plugins>
            </build>
        </profile>
    </profiles>

</project>

Any idea how to get the deployment with maven works?

like image 891
Max_Salah Avatar asked May 03 '13 15:05

Max_Salah


1 Answers

It looks maven does not know where to find the maven-vault-plugin. You will need to add the Adobe repository to your maven POM, see http://repo.adobe.com/.

That will cause the Unresolveable build extension: Plugin com.day.jcr.vault:maven-vault- plugin:0.0.10 error and the Unknown packaging: content-package @ line 12, column 16 errors.

Also, you still have some variable placeholders (<groupId><!-- {groupId} --></groupId>) from the tutorial left in your code that will need replacing. See the error:

[ERROR]     'dependencies.dependency.groupId' for :core:jar is missing. @ line 18, column 22

In the <embeddeds> section of the vault plugin configuration, you can specify maven dependencies that you wish to include. An example of this can be seen in this Managing packages with Maven page.

If you don't want to include any external dependencies in your package right now, you could probably remove the<embeddeds> section altogether.

like image 155
diffa Avatar answered Sep 18 '22 22:09

diffa