adobe / aem-project-archetype Goto Github PK
View Code? Open in Web Editor NEWMaven template to create best-practice websites on AEM.
License: Apache License 2.0
Maven template to create best-practice websites on AEM.
License: Apache License 2.0
I'm considering creating a pull request replacing tab characters with spaces. Is \t the adobe best practice for AEM indentation?
In the file aem-project-archetype/src/main/archetype/ui.apps/src/main/content/jcr_root/apps/appsFolderName/components/page/page/page.html
There is still a JSP tag in there: <meta http-equiv="keywords" content="<%= WCMUtils.getKeywords(currentPage) %>">
I'm honestly not sure how to grab the keywords using Sightly, so I'm curious to see what the Sightly way of doing that is! :)
local installation instructions would help developers use the pre-release versions of this archetype
To compile and use an edge, local version of this archetype:
mvn clean install archetype:update-local-catalog
mvn archetype:generate \
-DarchetypeCatalog=local
-DarchetypeGroupId=com.adobe.granite.archetypes \
-DarchetypeArtifactId=aem-project-archetype \
-DarchetypeVersion=9-SNAPSHOT.
Hi, just that small question I have
I just noticed that if an author creates a page via WCM/CRXDE i won't have those changes in my codebase, and hence I run into the risk of replacing that content whenever I deploy the whole project.
Could someone tell me whats the goal of it? Is there a setting/flag for when I want to deploy to Staging/Production environments? Or does this assume that I will be building a package manually that DOES NOT include /content?
This contains a fix for Maven 3.3.1 or newer
The Logger configs provided in the archetype are breaking the normal logging of the AEM instance. After first deployment of the package, this is what I see as the last line in error.log
:
03.10.2014 11:36:41.128 *INFO* [JcrInstaller.1] org.apache.sling.installer.provider.jcr.impl.JcrInstaller Registering resource with OSGi installer: [InstallableResource, priority=200, id=/apps/lego/config/org.apache.sling.commons.log.LogManager.factory.config-mgp]
03.10.2014 11:36:41.183 *INFO* [OsgiInstallerImpl] org.apache.sling.audit.osgi.installer Installed configuration org.apache.sling.commons.log.LogManager.factory.config.b8d6cd0c-e48c-4b73-bf9d-cf189e932318 from resource TaskResource(url=jcrinstall:/apps/lego/config/org.apache.sling.commons.log.LogManager.factory.config-mgp, entity=config:org.apache.sling.commons.log.LogManager.factory.config.mgp, state=INSTALL, attributes=[org.apache.sling.installer.api.tasks.ResourceTransformer=:27:84:, service.factoryPid=org.apache.sling.commons.log.LogManager.factory.config, service.pid=mgp], digest=491c6b6ab83b703942ffc3a726a9b999)
And everything start to be written in stdout.log
aftewards, including these Logger errors:
11:36:41,458 |-INFO in org.apache.sling.commons.log.logback.internal.util.SlingRollingFileAppender[/logs/my-aem-project.log] - Active log file name: /Users/cbuzoiu/cq/instances/
sp1/crx-quickstart/logs/my-aem-project.log
11:36:41,458 |-INFO in org.apache.sling.commons.log.logback.internal.util.SlingRollingFileAppender[/logs/my-aem-project.log] - File property is set to [/Users/cbuzoiu/cq/instanc
es/sp1/crx-quickstart/logs/my-aem-project.log]
11:36:41,458 |-INFO in LogWriter{configurationPID='null', fileName='/Users/cbuzoiu/cq/instances/sp1/crx-quickstart/logs/my-aem-project.log', logNumber=7, logRotation=''.'yyyy-MM
-dd'} - Completed configuring appender with name /Users/cbuzoiu/cq/instances/sp1/crx-quickstart/logs/my-aem-project.log
11:36:41,459 |-ERROR in org.apache.sling.commons.log.logback.internal.LogbackManager@47befe3d - Error occurred while configuring Logback java.lang.IllegalArgumentException: Cann
ot format given Object as a Date
at java.lang.IllegalArgumentException: Cannot format given Object as a Date
at at java.text.DateFormat.format(DateFormat.java:301)
at at java.text.Format.format(Format.java:157)
at at java.text.MessageFormat.subformat(MessageFormat.java:1313)
at at java.text.MessageFormat.format(MessageFormat.java:860)
at at java.text.Format.format(Format.java:157)
at at java.text.MessageFormat.format(MessageFormat.java:836)
at at org.apache.sling.commons.log.logback.internal.LogConfig.createLayout(LogConfig.java:124)
at at org.apache.sling.commons.log.logback.internal.util.LoggerSpecificEncoder.addLogConfig(LoggerSpecificEncoder.java:72)
at at org.apache.sling.commons.log.logback.internal.LogConfigManager.onResetComplete(LogConfigManager.java:290)
at at org.apache.sling.commons.log.logback.internal.LogbackManager.fireResetCompleteListeners(LogbackManager.java:268)
at at org.apache.sling.commons.log.logback.internal.OsgiInternalAction$ConfigCompleteListener.inPlay(OsgiInternalAction.java:158)
at at ch.qos.logback.core.joran.spi.InterpretationContext.fireInPlay(InterpretationContext.java:183)
at at ch.qos.logback.core.joran.spi.EventPlayer.play(EventPlayer.java:61)
at at ch.qos.logback.core.joran.GenericConfigurator.doConfigure(GenericConfigurator.java:149)
at at ch.qos.logback.core.joran.GenericConfigurator.doConfigure(GenericConfigurator.java:135)
at at ch.qos.logback.core.joran.GenericConfigurator.doConfigure(GenericConfigurator.java:99)
at at ch.qos.logback.core.joran.GenericConfigurator.doConfigure(GenericConfigurator.java:49)
at at org.apache.sling.commons.log.logback.internal.LogbackManager$DefaultCallback.perform(LogbackManager.java:604)
at at org.apache.sling.commons.log.logback.internal.LogbackManager.configure(LogbackManager.java:325)
at at org.apache.sling.commons.log.logback.internal.LogbackManager.configure(LogbackManager.java:305)
at at org.apache.sling.commons.log.logback.internal.LogbackManager.access$300(LogbackManager.java:51)
at at org.apache.sling.commons.log.logback.internal.LogbackManager$1.run(LogbackManager.java:252)
at at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)
at at java.util.concurrent.FutureTask.run(FutureTask.java:262)
at at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at at java.lang.Thread.run(Thread.java:745)
11:36:41,459 |-WARN in org.apache.sling.commons.log.logback.internal.LogbackManager@47befe3d - No previous configuration to fall back on.
When running mvn clean install -PautoInstallPackage,integrationTests
I see the following output in the maven log, and it appears the integration tests are executing twice.
2421 [main] INFO org.apache.sling.junit.remote.httpclient.RemoteTestHttpClient - Executing test remotely, path=/com.test.it.tests.json JUnit servlet URL=http://localhost:4502/test/sling/1446666680947.junit
2437 [main] INFO org.apache.sling.junit.remote.testrunner.SlingRemoteTestRunner - Server-side tests executed as admin at http://localhost:4502/test/sling/1446666680947.junit with path /com.test.it.tests.json
Running com.test.it.launcher.SlingServerSideTest
2440 [main] INFO org.apache.sling.junit.remote.httpclient.RemoteTestHttpClient - Executing test remotely, path=/com.test.it.tests.json JUnit servlet URL=http://localhost:4502/test/sling/1446666680947.junit
2454 [main] INFO org.apache.sling.junit.remote.testrunner.SlingRemoteTestRunner - Server-side tests executed as admin at http://localhost:4502/test/sling/1446666680947.junit with path /com.test.it.tests.json
This can be verified by attaching a remote debugger and setting a breakpoint in the test class.
This is the minimum version required by AEM 6.0, see https://docs.adobe.com/docs/en/aem/6-0/deploy/technical-requirements.html#Servlet%20Engines%20/%20Application%20Servers
Doing a mvn clean install
shows following warnings:
[INFO] --- maven-bundle-plugin:2.5.0:bundle (default-bundle) @ example.it.tests ---
[WARNING] Bundle org.myorg:example.it.tests:bundle:0.0.1-SNAPSHOT : Unused Export-Package instructions: [example.it.tests.*]
and
[INFO] --- maven-jar-plugin:2.4:jar (default-jar) @ example.it.launcher ---
[WARNING] JAR will be empty - no content was marked for inclusion!
[INFO] Building jar: /Users/username/Documents/workspace/example/it.launcher/target/example.it.launcher-0.0.1-SNAPSHOT.jar
In the AEM Developer Tools, when starting a Run as
> Maven install
, then following warning is displayed in the Problems
panel:
Description: No grammar constraints (DTD or XML Schema) referenced in the document.
Resource: TEST-org.myorg.example.core.impl.TestHelloServiceImpl.xml
Path: /example.core/target/surefire-reports
Location: line 1
Type: XML Problem
I don't think that SimpleServlet is working.
I can't find the text it is supposed to output at the page.
Could you please re check this?
If it does work for you, could you tell me where did you find the outputted text and AEM version?
Thanks
mvn clean verify -PintegrationTests
Result
Results :
Failed tests:
SlingServerSideTest.testHelloWorldModelServerSide testHelloWorldModelServerSide(com.example.it.tests.HelloWorldModelServerSideTest): Expecting HelloWorldModel to be injected by Sling test runnerTests run: 1, Failures: 1, Errors: 0, Skipped: 0
Currently it is not possible to use Inject within a sling-models class, because the sling-model dependency is missing.
In the page.html we have:
${currentPage.template.name}
This will always result into an error on publish, because getTemplate() returns null on publish.
Including a sub-package in the ui.content project results in the package being added to the zip file, but the filter entry is not added.
Teams using this archetype may encounter issues with this custom 404 handler as it returns HTTP 200 OK. Some hosting providers may leverage a healthcheck system or load balancing strategy which depends on a guaranteed non-existing page, and expect HTTP status code 404 to be served from a running AEM instance.
When you execute
mvn -PautoInstallPackage,autoInstallPackagePublish clean install
You would expect to have the packages installed on both the author instance on port 4502 as the publish instance on port 4503, but that's not true.
It will install the packages twice on the port specified for the last active profile, in this case profile autoInstallPackagePublish, thus port 4503.
...
[INFO] Installing xxxx.ui.apps (/xxxx/ui.apps/target/xxxx.ui.apps-1.0.0-SNAPSHOT.zip) to http://localhost:4503/crx/packmgr/service.jsp
...
[INFO] Installing xxxx.ui.apps (/xxxx/ui.apps/target/xxxx.ui.apps-1.0.0-SNAPSHOT.zip) to http://localhost:4503/crx/packmgr/service.jsp
...
(real filenames and package names stripped out)
At first I thought it was because the profile id is the same on both profiles, but even after changing that, the output remains the same.
Below the section from the pom.xml:
<profiles>
<profile>
<id>autoInstallPackage</id>
<activation>
<activeByDefault>false</activeByDefault>
</activation>
<build>
<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>
</execution>
</executions>
<configuration>
<targetURL>http://${aem.host}:${aem.port}/crx/packmgr/service.jsp</targetURL>
<failOnError>true</failOnError>
<failOnMissingEmbed>true</failOnMissingEmbed>
</configuration>
</plugin>
</plugins>
</build>
</profile>
<profile>
<id>autoInstallPackagePublish</id>
<activation>
<activeByDefault>false</activeByDefault>
</activation>
<build>
<plugins>
<plugin>
<groupId>com.day.jcr.vault</groupId>
<artifactId>content-package-maven-plugin</artifactId>
<executions>
<execution>
<id>install-package-publish</id>
<goals>
<goal>install</goal>
</goals>
</execution>
</executions>
<configuration>
<targetURL>http://${aem.publish.host}:${aem.publish.port}/crx/packmgr/service.jsp</targetURL>
<failOnError>true</failOnError>
<failOnMissingEmbed>true</failOnMissingEmbed>
</configuration>
</plugin>
</plugins>
</build>
</profile>
</profiles>
Not sure if this is the right place to report this, though.
I was looking at the clientlib-all and it seems to create a problem: every time a new component (with clientlib) is created, it is required to explicitly add in there.
I understand this gives flexibility to import the files in order.
I want to know if this gives anymore advantages when compared with putting all the components clientlibs in the same category.
Hi,
when using the archetype out-of-the-box, it is impossible to install the core bundle into a running AEM server using the maven-sling-plugin:
$ mvn -PautoInstallBundle sling:install
[..]
[INFO] Installing Bundle com.aperto.aem-example.core(/Users/joerg.frantzius/eclipse-workspaces/aem-training/aem-example/core/target/aem-example.core-0.0.1-SNAPSHOT.jar) to http://localhost:4502/crx/repository/crx.default/apps/aemexample/install/ via PUT
[..]
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[..]
[ERROR] Failed to execute goal org.apache.sling:maven-sling-plugin:2.1.0:install (default-cli) on project aem-example.core: Installation on http://localhost:4502/crx/repository/crx.default/apps/aemexample/install/ failed, cause: Installation failed, cause: Method Not Allowed -> [Help 1]
When I change the maven-sling-plugin configuration to <usePut>false</usePut>
, then the bundle install works as expected.
Maybe that's a bug either in the maven-sling-plugin implementation or documentation, as its documentation says that usePut is false by default.
Hi, I just run the project as is and had it working on AEM 6.0.0. After installing SP2 the error handler for missing pages will not fire and it will default to the one from Apache Sling.
This is the cause
Caused by: java.lang.IllegalArgumentException: Argument cannot be null if path is not absolute: resource.js
at io.sightly.java.api.ResourceResolution.resolveComponent(ResourceResolution.java:101)
at io.sightly.java.api.ResourceResolution.resolveComponentRelative(ResourceResolution.java:60)
at io.sightly.js.JsEnvironment.run(JsEnvironment.java:93)
at io.sightly.js.use.DependencyResolver.resolve(DependencyResolver.java:54)
at io.sightly.js.use.UseFunction.use(UseFunction.java:78)
at io.sightly.js.use.UseFunction.call(UseFunction.java:66)
at org.mozilla.javascript.Interpreter.interpretLoop(Interpreter.java:1473)
at org.mozilla.javascript.Interpreter.interpret(Interpreter.java:815)
at org.mozilla.javascript.InterpretedFunction.call(InterpretedFunction.java:109)
at org.mozilla.javascript.ContextFactory.doTopCall(ContextFactory.java:394)
at org.mozilla.javascript.ScriptRuntime.doTopCall(ScriptRuntime.java:3091)
at org.mozilla.javascript.InterpretedFunction.exec(InterpretedFunction.java:120)
at org.mozilla.javascript.Context.evaluateReader(Context.java:1110)
at org.apache.sling.scripting.javascript.internal.RhinoJavaScriptEngine.eval(RhinoJavaScriptEngine.java:116)
Any ides as to what si breaking this?
Regression caused by 7435bf3 .
Upon generating a project based on this archetype, the maven-compiler-plugin
configuration in the resulting pom.xml
defaults to Java 6
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<source>1.6</source>
<target>1.6</target>
</configuration>
</plugin>
Whereas the currently supported versions of AEM require Java 7 or higher. It seems reasonable to me that the defaults to be changed to 1.7 or perhaps 1.8 (given how Oracle Java 7 reached end of life as of May 2015) in terms of both source and binaries.
Is there a reason to keep these defaults lower?
When running the integration tests against an AEM 6.1 instance, downgrading the mentioned bundles makes the org.apache.sling.discovery.impl bundle fail to resolve, leading in turn to other bundles failing to resolve, etc.
The 'outputDirectory' configuration for the Felix SCR plugin throws a 'element not allowed here' error in the POM editors; I'm wondering if we need to include an additional namespace?
<plugin>
<groupId>org.apache.felix</groupId>
<artifactId>maven-scr-plugin</artifactId>
<version>1.20.0</version>
<executions>
<execution>
<id>generate-scr-scrdescriptor</id>
<goals>
<goal>scr</goal>
</goals>
<configuration>
<!-- Private service properties for all services. -->
<properties>
<service.vendor>Adobe</service.vendor>
</properties>
</configuration>
</execution>
</executions>
<configuration>
<outputDirectory>${project.build.directory}/classes</outputDirectory>
</configuration>
<dependencies>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-simple</artifactId>
<version>1.5.11</version>
</dependency>
</dependencies>
</plugin>
The default value of ${version} might be better served for users if it defaulted to a semver[1] heuristic.
<requiredProperty key="version">
<defaultValue>0.1.0-SNAPSHOT</defaultValue>
</requiredProperty>
there are m2eclipse warnings showing up when generating a project: 'maven enforcer plugin is ignored by m2e'
Hi, just a small request, as there is no easy consensus on how clientlibs work. And probably this archetype would be the best way to provide best practice
It is suggested to use Component-Level clientlibs, these are all grouped up by a clientlib at the /etc/design level, which guarantees they are not being exposed from the /apps level
However, this gets a bit blurry when there are images or fonts involved. If lets say component A has the following CSS rule
.bg {
background-image: url(../img/cloud-img.png);}
That resolves to
background-image: url(../../../apps/my-project/components/content/componentA/clientlib/img/cloud-img.png);
despite of the clientlib being offered via /etc/clientlib-all
Whats your take on this case?
Could you add an image folder to the archetype and provide a nice read-me suggesting best practice?
Not a big deal but the following error appears in the browser console for any We.Retail site page:
dje4ayd.js:48 Typekit: the domain [domain-name] isn't in the list of published domains for kit "dje4ayd".
Basically, our UNIT test server isn't in your TypeKit's (ID: dje4ayd) publish domain list. I went to create my own TypeKit for our test environments but the font being used (Proxima Nova) is a premium-only font, so I can't even technically replace your TypeKit ID with my own to get this to work properly.
Maybe I'm just being OCD about clean console output. If so, I apologize.
EDIT: I apologize, too many tabs open, wrong repo. This is embarassing.
The root node of the topnav
component (../components/content/topnav) is of type nt:folder
instead of cq:Component
When running integration tests the AEM package manager does not work anymore. It's because task installs old versions of httpclient-osgi and httpscore-osgi. As a workaround the pom.xml in launcher project can be modified by commenting the bundles. Integration tests work without installing these bundles.
<sling.additional.bundle.7>httpclient-osgi</sling.additional.bundle.7>
<sling.additional.bundle.8>httpcore-osgi</sling.additional.bundle.8>
The JavaScript and CSS files should be located inside a js
and css
folder within the client library folder.
This might be a worthwhile addition to the archetype core pom https://github.com/apache/sling/tree/trunk/contrib/extensions/sling-query
When we are overwriting a new package with new version, on un-installation the OSGi bundle is not getting removed from web console. Following are the steps to reproduce.
Also refer issue raised on AEM Plugin Page. This has some analysis done on this issue.
From the archetypes list
Following works fine
<groupId>com.day.jcr.vault</groupId>
<artifactId>multimodule-content-package-archetype</artifactId>
While following does not
<groupId>com.adobe.granite.archetypes</groupId>
<artifactId>aem-project-archetype</artifactId>
The aem-project-archetype
generates extra exclude pattern
<filter root="/apps/myapp">
<exclude pattern="/apps/myapp/install" />
</filter>
This exclude pattern is not present in the multimodule-content-package-archetype
Did few tests, after we remove this from filter, the aem-project-archetype
works fine, not sure if there would be any side-effects due to this.
I wonder what is the reason for using #set( $symbol_dollar = '$' ) and then ${symbol_dollar}{properties.text} in the sightly scripts instead of just escaping the $ like this $?
According to http://stackoverflow.com/questions/1878742/how-do-you-suppress-property-replacement-when-creating-a-project-from-an-archety escaping the $ should be fine.
More of a question not an issue!
Cheers,
The components
property of /etc/designs/<project>/jcr:content/page-home/par
misreferences the Service Component as
/apps/ggg/components/servicecomponent
instead of
/apps/ggg/components/content/servicecomponent
It was reported in the Adobe Forum that the page does not properly open the sidekick (in /cf# that is, in /editor.html it works).
One fix is to include /libs/wcm/foundation/components/page/head.html in page.html
I tried using the new project wizard and created the aem-project-archetype-10 project and deploy to a quickstart, and saw the following error message during publish.
Failed publishing path=/, result=JcrResult[ success:false, exception: org.apache.sling.ide.transport.RepositoryException - javax.jcr.nodetype.ConstraintViolationException: Item is protected]
Any reason for the /apps/install package being excluded in the apps filters?
<?xml version="1.0" encoding="UTF-8"?>
<workspaceFilter version="1.0">
<filter root="/apps/${appsFolderName}">
<exclude pattern="/apps/${appsFolderName}/install" />
</filter>
<filter root="/apps/sling" />
<filter root="/etc/designs/${appsFolderName}"/>
</workspaceFilter>
It causes issues when exporting built packages at a later point. The core.jar file is then not included in builds, which means you have to install that manually on different servers?(We do not only use maven)
Move all of them to the parent/reactor pom and then bump to the latest versions. Especially the maven-resources-plugin would be nice to get to avoid the annoying
[debug] execute contextualize
I see no particular reason to use an (Adobe) Granite parent pom, as
I created a new project with archetype 7, and find out I cannot find any output in error.log.
After investigation we find a dedicated logger is created for the log, and its log level is set to Error.
I have three suggestions here:
(1) the logger level is better to be Info or debug. Error is normally only used for project live env.
(2) In my case I only need back end coding for the project. but there is no specific archetype for it, so that I have to create the project with one available archetype and remove stuff not being used.
(3) sample-project-archetype 5, 6 or 7 is hard for users to tell the distinctions between them.
Although the archetype is valid, Eclipse can not execute the include directive and shows an error.
There should be an option to create a project without any sample content, so that experienced developers don't have to start deleting things before getting started.
In AEM 6.1 the dependencies JAR moved from
<dependency>
<groupId>com.adobe.aem</groupId>
<artifactId>aem-api</artifactId>
<version>6.0.0.1</version>
</dependency>
to
<dependency>
<groupId>com.day.cq</groupId>
<artifactId>cq-quickstart</artifactId>
<version>6.1.0</version>
<classifier>apis</classifier>
</dependency>
With AEM 6.3 the same error as posted/closed here [ https://github.com//issues/59 ] shows up.
Core bundle is not resolved with wrong version of javax.inject
[INFO] [ERROR] Failed to execute goal org.apache.maven.plugins:maven-install-plugin:2.5.2:install (default-install) on project basic.it.launcher: The packaging for this project did not assign a file to the build artifact -> [Help 1]
[INFO] org.apache.maven.lifecycle.LifecycleExecutionException: Failed to execute goal org.apache.maven.plugins:maven-install-plugin:2.5.2:install (default-install) on project basic.it.launcher: The packaging for this project did not assign a file to the build artifact
[INFO] at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:216)
[INFO] at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:153)
[INFO] at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:145)
[INFO] at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:116)
[INFO] at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:80)
[INFO] at org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build(SingleThreadedBuilder.java:51)
[INFO] at org.apache.maven.lifecycle.internal.LifecycleStarter.execute(LifecycleStarter.java:128)
[INFO] at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:307)
[INFO] at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:193)
[INFO] at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:106)
[INFO] at org.apache.maven.cli.MavenCli.execute(MavenCli.java:862)
[INFO] at org.apache.maven.cli.MavenCli.doMain(MavenCli.java:286)
[INFO] at org.apache.maven.cli.MavenCli.main(MavenCli.java:197)
[INFO] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
[INFO] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
[INFO] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
[INFO] at java.lang.reflect.Method.invoke(Method.java:497)
[INFO] at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.java:289)
[INFO] at org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:229)
[INFO] at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:415)
[INFO] at org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:356)
[INFO] Caused by: org.apache.maven.plugin.MojoExecutionException: The packaging for this project did not assign a file to the build artifact
[INFO] at org.apache.maven.plugin.install.InstallMojo.installProject(InstallMojo.java:220)
[INFO] at org.apache.maven.plugin.install.InstallMojo.execute(InstallMojo.java:126)
[INFO] at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:134)
[INFO] at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:208)
[INFO] ... 20 more
[INFO] [ERROR]
[INFO] [ERROR] Re-run Maven using the -X switch to enable full debug logging.
[INFO] [ERROR]
[INFO] [ERROR] For more information about the errors and possible solutions, please read the following articles:
[INFO] [ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MojoExecutionException
[INFO] [ERROR]
[INFO] [ERROR] After correcting the problems, you can resume the build with the command
[INFO] [ERROR] mvn -rf :basic.it.launcher
Since AEM 6.1, there's no reason (IMHO) to have a custom column control component. Instead, the page component should be using the responsive grid.
By default this archetype creates a project for aem 6.0.0.1. Can we have support to create a project for aem 5.6.1 as well?
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.