5

我正在尝试使用 maven 部署 AEM,所以我按照本教程进行操作。当我运行命令mvn clear package时,我收到以下错误:

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

我的 myproject/app/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>
    <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>

知道如何使用 maven 进行部署吗?

4

2 回答 2

5

看起来 maven 不知道在哪里可以找到 maven-vault-plugin。您需要将 Adob​​e 存储库添加到您的 maven POM,请参阅http://repo.adobe.com/

这将导致Unresolveable build extension: Plugin com.day.jcr.vault:maven-vault- plugin:0.0.10错误和Unknown packaging: content-package @ line 12, column 16错误。

此外,您的代码中仍有一些<groupId><!-- {groupId} --></groupId>来自教程的变量占位符 ( ) 需要替换。查看错误:

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

<embeddeds>Vault 插件配置部分,您可以指定要包含的 Maven 依赖项。可以在使用 Maven 管理包页面中看到一个示例。

如果您现在不想在包中包含任何外部依赖项,您可以<embeddeds>完全删除该部分。

于 2013-05-04T20:44:25.663 回答
0

在构建项目之前,请确保您已启动 CQ/AEM。很多熟悉 Vault 和 maven 的错误都是因为它而出现的。

于 2016-08-18T12:55:44.103 回答