1. Feedback is welcome on the work we are doing (again HUGE KUDOS to Mao for the implementation) on the experimental branch http://maven-alfresco-archetypes.googlecode.com/svn/branches/experimental/alfresco-lifecycle-aggregator/. There are a lot of goodies in there and if you check the README.txt, DOCS.txt and TODO.txt in there you'll discover we are pretty much ready to bring that back to trunk. Feedback is obviously MORE THAN WELCOME on this.
[quickstart-amp-archetype]$ mvn install
...
[ERROR] Failed to execute goal on project quickstart-amp-archetype: Could not resolve dependencies for project com.mycompany:quickstart-amp-archetype:amp:1.0-SNAPSHOT: Failed to collect dependencies for [org.alfresco.enterprise:alfresco-repository:jar:1.0-SNAPSHOT (provided), org.springframework:spring-core:jar:3.0.5.RELEASE (provided), org.springframework:spring-beans:jar:3.0.5.RELEASE (provided)]: Failed to read artifact descriptor for org.alfresco.enterprise:alfresco-repository:jar:1.0-SNAPSHOT: Could not transfer artifact org.alfresco.enterprise:alfresco-repository:pom:1.0-SNAPSHOT from/to alfresco-enterprise-releases (http://maven.alfresco.com/nexus/content/repositories/enterprise-releases): Not authorized, ReasonPhrase:Unauthorized. -> [Help 1]
If anyone has any feature from the current 3.9.1 version that we should port there, please shout now.
2. With ALF-11027 we are automating deployments of Community / Enterprise artifacts.
On Wednesday, May 2, 2012 5:54:47 AM UTC-6, Gabriele Columbro wrote:1. Feedback is welcome on the work we are doing (again HUGE KUDOS to Mao for the implementation) on the experimental branch http://maven-alfresco-archetypes.googlecode.com/svn/branches/experimental/alfresco-lifecycle-aggregator/. There are a lot of goodies in there and if you check the README.txt, DOCS.txt and TODO.txt in there you'll discover we are pretty much ready to bring that back to trunk. Feedback is obviously MORE THAN WELCOME on this.
- README.txt "Build and Run" says "cd alfresco-lifecycle-aggregator/mmt-maven-plugin" instead of "cd alfresco-lifecycle-aggregator/plugins/mmt-maven-plugin".
- alfresco-platform-parent pom.xml makes reference to a bunch of undefined properties like ${alfresco.version}. I tried to hack around this by copying the definitions from alfresco-integration-parent.
- alfresco-patform-parent pom.xml has <groupId>org.alfresco.enterprise</groupId> and <version>4.0.1</version>, yet alfresco-integration-parent defines <alfresco.version>4.0.b</alfresco.version> and <alfresco.edition>community</alfresco.edition>. Will this mismatch not cause problems? I was expecting to find a pom.xml somewhere, similar to alfresco-patform-parent, but with <groupId>org.alfresco.community</groupId>. It is unclear to me from viewing the code exactly how this switching will be implemented.
- alfresco-integration-parent pom.xml defines a project <version>4.0.b</version> and then a duplicate value in the <alfresco.version>4.0.b</alfresco.version> property - why not just default to <alfresco.version>${project.version}</alfresco.version>?
- alfresco-developer-parent pom.xml defines a profile for mmt-maven-plugin with <goal>add-resources</goal>, but mvn says "[ERROR] Could not find goal 'add-resources' in plugin org.alfresco.maven.plugin:mmt-maven-plugin:1.0-SNAPSHOT among available goals install, amp". I tried hacking around this by commenting out that profile.
Then:[quickstart-amp-archetype]$ mvn install
...
[ERROR] Failed to execute goal on project quickstart-amp-archetype: Could not resolve dependencies for project com.mycompany:quickstart-amp-archetype:amp:1.0-SNAPSHOT: Failed to collect dependencies for [org.alfresco.enterprise:alfresco-repository:jar:1.0-SNAPSHOT (provided), org.springframework:spring-core:jar:3.0.5.RELEASE (provided), org.springframework:spring-beans:jar:3.0.5.RELEASE (provided)]: Failed to read artifact descriptor for org.alfresco.enterprise:alfresco-repository:jar:1.0-SNAPSHOT: Could not transfer artifact org.alfresco.enterprise:alfresco-repository:pom:1.0-SNAPSHOT from/to alfresco-enterprise-releases (http://maven.alfresco.com/nexus/content/repositories/enterprise-releases): Not authorized, ReasonPhrase:Unauthorized. -> [Help 1]
Which I'm guessing means the actual Alfresco Maven artifacts aren't published in the repo yet.
... at which point I gave up for now ;)
I haven't had time to try upgrading from maven-amp-plugin 3.0.3. Is there now a working facility for having code from one AMP build against shared base-class beans/code from within another AMP? You had mentioned a method of using "attachments" and "classifiers" within another thread, but that was reported to not work?
I don't see a http://maven.alfresco.com/nexus/content/repositories/releases/org/alfresco/alfresco-core/4.0.b-mvn-r35250/alfresco-core-4.0.b-mvn-r35250-sources.jar - are source and javadoc jars being published with the artifacts, or should I update my script to extract those from the associated SDK and upload them to an internal repo? :( One of the primary reasons I like Maven is the ability to setup source attachments for use in a debugger.
Hi Chris,thanks a lot for this very detailed email, and sorry for the inconveniences during your tests; as you pointed out, there are still some dependencies missing and some ongoing deployment procedures that are populating our internal repos; my answers interleaved:
On Thu, May 3, 2012 at 9:03 PM, Chris Hubick <ch...@hubick.com> wrote:On Wednesday, May 2, 2012 5:54:47 AM UTC-6, Gabriele Columbro wrote:1. Feedback is welcome on the work we are doing (again HUGE KUDOS to Mao for the implementation) on the experimental branch http://maven-alfresco-archetypes.googlecode.com/svn/branches/experimental/alfresco-lifecycle-aggregator/. There are a lot of goodies in there and if you check the README.txt, DOCS.txt and TODO.txt in there you'll discover we are pretty much ready to bring that back to trunk. Feedback is obviously MORE THAN WELCOME on this.
- README.txt "Build and Run" says "cd alfresco-lifecycle-aggregator/mmt-maven-plugin" instead of "cd alfresco-lifecycle-aggregator/plugins/mmt-maven-plugin".Fixed, thanks. the idea is that mmt-maven-plugin will be maintained by Alfresco, therefore it will be only used by the community as soon as first version will be deployed on maven.alfresco.com- alfresco-platform-parent pom.xml makes reference to a bunch of undefined properties like ${alfresco.version}. I tried to hack around this by copying the definitions from alfresco-integration-parent.
Wow, missed a commit, (very) silly me. Was still working on my local environment, since I'm installing deps locally. Fixed, thanks for pointing out!- alfresco-patform-parent pom.xml has <groupId>org.alfresco.enterprise</groupId> and <version>4.0.1</version>, yet alfresco-integration-parent defines <alfresco.version>4.0.b</alfresco.version> and <alfresco.edition>community</alfresco.edition>. Will this mismatch not cause problems? I was expecting to find a pom.xml somewhere, similar to alfresco-patform-parent, but with <groupId>org.alfresco.community</groupId>. It is unclear to me from viewing the code exactly how this switching will be implemented.
There will be one alfresco-platform-parent for each Alfresco release (and snapshot release, both community and enterprise), automatically generated and deployed into maven.alfresco.com; this means that the alfresco-platform-parent we use in the branch is just an example of an Alfresco version/edition that is already deployed into the Maven repo. Sorry for the confusion, I should report this info into the README
If you just want to try it, look in maven.alfresco.com for available versions/editions and define the pom properties
- alfresco-integration-parent pom.xml defines a project <version>4.0.b</version> and then a duplicate value in the <alfresco.version>4.0.b</alfresco.version> property - why not just default to <alfresco.version>${project.version}</alfresco.version>?
If you define <alfresco.version> as ${project.version} in alfresco-plaform-parent (instead of explicitly setting its value, ie <alfresco.version>4.0.1</...>), when you develop your own module against it (say my.company:my-amp:1.0-SNAPSHOT), alfresco.version will be resolved as 1.0-SNAPSHOT; this is why the property needs to be set explicitly.
- alfresco-developer-parent pom.xml defines a profile for mmt-maven-plugin with <goal>add-resources</goal>, but mvn says "[ERROR] Could not find goal 'add-resources' in plugin org.alfresco.maven.plugin:mmt-maven-plugin:1.0-SNAPSHOT among available goals install, amp". I tried hacking around this by commenting out that profile.
This is strange; are you using Maven 3.0.3 ? the mmt-maven-plugin builds successfully? Please try to rm -Rf ~/.m2/org/alfresco/maven/plugin and then rebuild again, the goal should be working.Then:[quickstart-amp-archetype]$ mvn install
...
[ERROR] Failed to execute goal on project quickstart-amp-archetype: Could not resolve dependencies for project com.mycompany:quickstart-amp-archetype:amp:1.0-SNAPSHOT: Failed to collect dependencies for [org.alfresco.enterprise:alfresco-repository:jar:1.0-SNAPSHOT (provided), org.springframework:spring-core:jar:3.0.5.RELEASE (provided), org.springframework:spring-beans:jar:3.0.5.RELEASE (provided)]: Failed to read artifact descriptor for org.alfresco.enterprise:alfresco-repository:jar:1.0-SNAPSHOT: Could not transfer artifact org.alfresco.enterprise:alfresco-repository:pom:1.0-SNAPSHOT from/to alfresco-enterprise-releases (http://maven.alfresco.com/nexus/content/repositories/enterprise-releases): Not authorized, ReasonPhrase:Unauthorized. -> [Help 1]
Which I'm guessing means the actual Alfresco Maven artifacts aren't published in the repo yet.Correct, we're testing against internal-only Alfresco Enterprise versions, since the release process still needs some tweaking and optimisations before we open it to the public.
... at which point I gave up for now ;)Again, thanks a lot for the effort!I haven't had time to try upgrading from maven-amp-plugin 3.0.3. Is there now a working facility for having code from one AMP build against shared base-class beans/code from within another AMP? You had mentioned a method of using "attachments" and "classifiers" within another thread, but that was reported to not work?
Is there an issue about this feature? I can try to build it on top of the new POM structures, but I need to understand the use case first. Thanks!AFAICS there is yet no such a feature on the amp-plugin, but I might be wrong... @Gab
I don't see a http://maven.alfresco.com/nexus/content/repositories/releases/org/alfresco/alfresco-core/4.0.b-mvn-r35250/alfresco-core-4.0.b-mvn-r35250-sources.jar - are source and javadoc jars being published with the artifacts, or should I update my script to extract those from the associated SDK and upload them to an internal repo? :( One of the primary reasons I like Maven is the ability to setup source attachments for use in a debugger.Javadocs and sources are on their way; at the moment the only sources and javadoc available are internal-only and based on 4.0.1 enterprise, but - as anticipated before - we need to ask you a little bit more of patience before releasing all features across all versions/
Feel free to join us on Skype chat room (just ping m.pillitu) if you'd like to discuss more extensively about these topics; I'm also working on documentation and I'd love to hear your opinion about it; any advise is more than welcome (on syntax, structure and more); layout is still TXT until we'll contribute it to the Alfresco Wiki/Docs site.
--Thanks!mau
You received this message because you are subscribed to the Google Groups "Maven Alfresco Lifecycle Discussion Group" group.
To post to this group, send email to maven-a...@googlegroups.com.
To unsubscribe from this group, send email to maven-alfresc...@googlegroups.com.
For more options, visit this group at http://groups.google.com/group/maven-alfresco?hl=en.
<!-- Not in Maven Central! You need to
mvn install:install-file \
-Dfile=truezip.jar \
-DgroupId=de.schlichtherle.truezip \
-DartifactId=truezip \
-Dversion=5.1.2 \
-Dpackaging=jar
-->
It would be handy if someone could get that truezip artifact uploaded under http://maven.alfresco.com/nexus/content/groups/public/de/schlichtherle/truezip/truezip/5.1.2/ ?
I haven't had time to try upgrading from maven-amp-plugin 3.0.3. Is there now a working facility for having code from one AMP build against shared base-class beans/code from within another AMP? You had mentioned a method of using "attachments" and "classifiers" within another thread, but that was reported to not work?
Is there an issue about this feature? I can try to build it on top of the new POM structures, but I need to understand the use case first. Thanks!AFAICS there is yet no such a feature on the amp-plugin, but I might be wrong... @GabI always used this approach successfully:1. The depended AMP gets installed together with the -classes.jar artifact if you configure the maven-amp-plugin to attachClasses (http://maven.apache.org/plugins/maven-war-plugin/faq.html#attached)2. The dependent AMP uses the classifier "classes" to reference the attached aforementioned JARPlease open an issue if this does not work
<plugin><groupId>org.alfresco.maven.plugin</groupId><artifactId>maven-amp-plugin</artifactId><extensions>true</extensions><configuration><archive><addMavenDescriptor>false</addMavenDescriptor></archive><archiveClasses>true</archiveClasses><attachClasses>true</attachClasses>