コミュニティアチーブメントバーを展開する。

Submissions are now open for the 2026 Adobe Experience Maker Awards.

Mark Solution

この会話は、活動がないためロックされています。新しい投稿を作成してください。

解決済み

Overwrite Translations in CRX with content-package-maven plugin

Avatar

Level 2

When I add a new translation to the translations file and install the translation appears. When I change the translation and install the existing value is not overwritten. I'm struggling with the plugin's documentation to understand how to change this behaviour: to update an existing node value attribute.

Here's the configuration of the plugin:

          <plugin>

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

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

                    <version>0.5.24</version>

                    <extensions>true</extensions>

                    <configuration>

                        <packaging>zip</packaging>

                        <properties>

                            <acHandling>overwrite</acHandling>

                            <granite.suppressSnapshots>true</granite.suppressSnapshots>

                        </properties>

                        <failOnError>true</failOnError>

                        <install>true</install>

                        <verbose>true</verbose>

                        <useProxy>false</useProxy>

                    </configuration>

                </plugin>

<profile>

            <id>auto-install-package</id>

            <build>

                <pluginManagement>

                    <plugins>

                        <plugin>

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

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

                            <executions>

                                <execution>

                                    <id>install-package</id>

                                    <goals>

                                        <goal>install</goal>

                                    </goals>

                                    <configuration>

                                        <groupId>${project.groupId}</groupId>

                                        <artifactId>${project.artifactId}</artifactId>

                                        <targetURL>${cq.url}/crx/packmgr/service.jsp</targetURL>

                                        <userId>${cq.user}</userId>

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

                                    </configuration>

                                </execution>

                            </executions>

                        </plugin>

                    </plugins>

                </pluginManagement>

            </build>

        </profile>

The command I use to deploy is: mvn clean install -Pauto-install-package

1 受け入れられたソリューション

Avatar

正解者
Employee Advisor

I believe you need to use one of the following import modes depending on the requirement:

  • Replace: Content in the package that is not in the repository is added to the repository. Content in the repository is replaced with matching content in the package. Content is removed from the repository when it does not exist in the package.
  • Update: Content in the package that is not in the repository is added to the repository. Content in the repository is replaced with matching content in the package. Existing content gets removed from the repository. 

Check "Using Filters" at [1] for more details.

[1] Managing Packages Using Maven

元の投稿で解決策を見る

7 返信

Avatar

Employee Advisor

have you used the AEM archetype? Which version?

Jörg

Avatar

Level 2

I don't believe the codebase is using any archtetype.

Avatar

正解者
Employee Advisor

I believe you need to use one of the following import modes depending on the requirement:

  • Replace: Content in the package that is not in the repository is added to the repository. Content in the repository is replaced with matching content in the package. Content is removed from the repository when it does not exist in the package.
  • Update: Content in the package that is not in the repository is added to the repository. Content in the repository is replaced with matching content in the package. Existing content gets removed from the repository. 

Check "Using Filters" at [1] for more details.

[1] Managing Packages Using Maven

Avatar

Level 2

Yes I saw that and tried putting those settings in a few places but on each occassion it failed to have the desired impact.

Avatar

Employee Advisor

Can you share a minimal content-package where you can replicate this behavior? I am especially interested in the META-INF/vault/filter.xml file and the content in the respective path of the content-package.

Avatar

Level 2

It doesn't work at all on publish instances. It causes our deploys to fail with internal server error and no clues in the logs at all. Even just adding the following causes the error:

Avatar

Level 2

Our full parent POM looks like this: