On 1/19/07, Jason Dillon <[EMAIL PROTECTED]> wrote:
Aight... well, be careful. This looks like that start of an
unmaintainable build configuration.
And... It still does not build:
This should fix it.
Modified: Apache\geronimo\samples\pom.xml
Sending Content: C:\Apache\geronimo\samples\pom.xml
Completed: At revision: 498113
Thanx
Prasad
<snip>
Bliss:~/ws/geronimo/samples jason$ mvn
[INFO] Scanning for projects...
[INFO] Reactor build order:
[INFO] Geronimo Samples
[INFO] Geronimo Maven2 Plugins :: Samples Archetype
[INFO] Geronimo Samples :: Stateless Session :: Calculator
[INFO] Geronimo Samples :: Stateless Session :: Calculator EJB
[INFO] Geronimo Samples :: Stateless Session :: Calculator WAR
[INFO] Geronimo Samples :: Stateless Session :: Calculator EAR
[INFO]
------------------------------------------------------------------------
----
[INFO] Building Geronimo Samples
[INFO] task-segment: [install]
[INFO]
------------------------------------------------------------------------
----
[INFO] [site:attach-descriptor]
[INFO] [install:install]
[INFO] Installing /Users/jason/ws/geronimo/samples/pom.xml to /Users/
jason/.m2/repository/org/apache/geronimo/samples/samples/2.0-SNAPSHOT/
samples-2.0-SNAPSHOT.pom
[INFO]
------------------------------------------------------------------------
----
[INFO] Building Geronimo Maven2 Plugins :: Samples Archetype
[INFO] task-segment: [install]
[INFO]
------------------------------------------------------------------------
----
[INFO] [plugin:descriptor]
[INFO] Using 2 extractors.
[INFO] Applying extractor for language: java
[INFO] Extractor for language: java found 0 mojo descriptors.
[INFO] Applying extractor for language: bsh
[INFO] Extractor for language: bsh found 0 mojo descriptors.
[INFO] [resources:resources]
[INFO] Using default encoding to copy filtered resources.
[INFO]
------------------------------------------------------------------------
[ERROR] BUILD ERROR
[INFO]
------------------------------------------------------------------------
[INFO] Failed to resolve artifact.
Missing:
----------
1) org.apache.geronimo.specs:geronimo-ejb_3.0_spec:jar:1.0-SNAPSHOT
Try downloading the file manually from the project website.
Then, install it using the command:
mvn install:install-file -DgroupId=org.apache.geronimo.specs -
DartifactId=geronimo-ejb_3.0_spec \
-Dversion=1.0-SNAPSHOT -Dpackaging=jar -Dfile=/path/to/file
Path to dependency:
1) org.apache.geronimo.samples:geronimo-samples-
archetype:maven-plugin:2.0-SNAPSHOT
2) org.apache.geronimo.specs:geronimo-ejb_3.0_spec:jar:1.0-
SNAPSHOT
----------
1 required artifact is missing.
for artifact:
org.apache.geronimo.samples:geronimo-samples-archetype:maven-
plugin:2.0-SNAPSHOT
from the specified remote repositories:
central (http://repo1.maven.org/maven2)
[INFO]
------------------------------------------------------------------------
[INFO] For more information, run Maven with the -e switch
[INFO]
------------------------------------------------------------------------
[INFO] Total time: 4 seconds
[INFO] Finished at: Fri Jan 19 20:45:33 PST 2007
[INFO] Final Memory: 7M/13M
[INFO]
------------------------------------------------------------------------
</snip>
--jason
On Jan 19, 2007, at 7:54 PM, Prasad Kashyap wrote:
> On 1/19/07, Jason Dillon <[EMAIL PROTECTED]> wrote:
>> Why are there reporting elements in the architype (and also in the
>> first sample), which are not at the top-level, but are in calculator-
>> stateless-pojo?
>
> The requirement is for only 2 reporting elements, javadoc and jxr.
> A user should be able to download each sample separately, generate
> javadoc and source xrefs, and install the samples with those gen'ed
> files.
> The javadoc and jxr plugins can be configured with <aggregate>
> options.
> Executing the reporting at the top level will aggregate the reports at
> that level, not for the individual sample.
> But the user will be downloading the individual sample source package
> (eg: calculator-stateless-pojo)
> Also, the javadoc and jxr reports should not be inherited by every
> child module for they will also generate their own files. So we use
> <inherited>false</inherited>
> Now only an aggregated javadoc and source xref will be gen'ed at the
> top of each sample. This will be pulled into the war module and
> deployed to Geronimo server.
>
> I don't know how good a job I'm doing explaining this.
>
>>
>> Why does this project not inherit from genesis project-config?
>
> The project does not inherit from genesis' project-config because I
> could not prevent it from inheriting all the reports. I tried using
> <excludeDefaults> for the maven-project-info-plugin and that didn't
> work too.
>
>>
>> Why is the geronimo-maven-plugin configured here?
>
> See UseCase Scenario 1, Flow B.
> The user should be able to build the sample source package and deploy
> it in one go. In this flow, we are "pushing" the Geronimo binary on
> the user.
>
>>
>> And why on earth are there sources (CalculatorServlet) checked in
>> with:
>>
>> <snip>
>> /*
>> * Copyright 2002 Sun Microsystems, Inc. All rights reserved.
>> * SUN PROPRIETARY/CONFIDENTIAL. Use is subject to license terms.
>> */
>> </snip>
>>
>> :-(
>
> Oops. Thanks for catching it. The wrong file was checked in. It has
> since been corrected. .
> Completed: At revision: 498055 Thanx again.
>
>>
>> And you should use the released dependencies you are referencing in
>> he top-level pom, better yet depend on some part of Geronimo to pick
>> those up transitively so don't have to work about keeping the
>> versions in sync with a Geronimo version.
>>
>> Right now though this won't build, can probably fix by inheriting
>> from genesis project-config to pick the right repository
>> configurations, though these are old dep versions anyways... and you
>> probably don't want to make them dependencies of all modules of the
>> project, which is what you have setup right now.
>>
>> * * *
>>
>> I think its good to have some real samples to help folks get started,
>> but I wish that a little more attention to some of these details was
>> given.
>>
>> --jason
>>
>>
>> On Jan 19, 2007, at 9:22 AM, Prasad Kashyap wrote:
>>
>> > Encouraged by your kind words of appreciation for the Testsuite
>> > framework, I put together a similar Samples Framework.
>> >
>> > http://svn.apache.org/viewvc/geronimo/samples/
>> >
>> > UseCase Scenario 1
>> > -------------------------------
>> > Actor: Geronimo user, JEE5 Developer.
>> >
>> > Requirements:
>> > * Actor wants to learn the new features of JEE5 by looking at
>> > sample code
>> > * He wants to play with sample code.
>> > * He wants to learn how to develop applications on Geronimo.
>> > * He may want to use the sample code as a template for his own
>> > application.
>> >
>> > Flow A (install downloaded sample binary)
>> > * Actor downloads a Geronimo server binary and unpacks it.
>> > * He then downloads a sample binary.
>> > * He starts Geronimo server.
>> > * He then deploys the sample artifact into running server.
>> > * He goes to the sample app's home page (context-root).
>> >
>> > Flow B: (build sample source and install)
>> > * Actor downloads a sample source package.
>> > * He installs Maven if he doesn't have it already.
>> > * He builds the sample project using maven.
>> > * Sample project automatically downloads the latest Geronimo
>> > server, starts it, and deploys the newly built sample.
>> > * It fires up a browser and brings up the sample home page (not
>> > implemented yet).
>> >
>> > See the following links in Firefox only !
>> > Here is a page that gives a user instructions on working with
>> samples.
>> > Every sample download will also have a customized & relevant
>> page like
>> > this, say as a README.html
>> > http://people.apache.org/~prasad/samples/index.html
>> >
>> > Here is a sample sample page. Notice the javadoc and source tabs in
>> > the top right corner of the page.
>> > http://people.apache.org/~prasad/samples/sample.html
>> >
>> >
>> > UseCase Scenario 2
>> > -------------------------------
>> > Actor: Geronimo Developer, JEE5 Spec Implementor
>> >
>> > Interactions: Document Writer.
>> >
>> > Requirements:
>> > * Actor wants to create sample projects quickly without having to
>> > deal too much with Maven.
>> >
>> > Flow:
>> > * Actor executes a sample-archetype-plugin.
>> > * It creates a mvn project which will act as a template.
>> > * He only has to write JEE5 code for the sample application.
>> > * He then works with Document Writer to write the sample
>> document.
>> >
>> >
>> > Cheers
>> > Prasad.
>>
>>