You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@geronimo.apache.org by Jason Dillon <ja...@planet57.com> on 2009/06/17 10:36:11 UTC

Assemblies in the repo and their dependencies

Why do the assemblies in the repository have dependencies?  I realize  
that they are probably there to facilitate the build, but shouldn't  
they all be marked as <scope>provided</scope>?

The reason I think they should be, is that when a user wants to use  
the geronimo-maven-plugin with the assembly -bin in the repository,  
before they can even download the assembly -bin, first mvn has to go  
resolve every single dependency which is used to build that assembly - 
bin.

I think this is broken, while I can resolve by adding a tone of  
excludes, I think that this problem should be solved so that users can  
more easily consume the assembly artifacts we publish to the repository.

Any one know how easy/feasible with the current stuff (trunk and  
2.1.x) it would be to mark all dependencies as provided?

--jason

Re: Assemblies in the repo and their dependencies

Posted by Jason Dillon <ja...@planet57.com>.
hrm... weird... will try to clean some of my repo and build again.

--jason


On Jun 18, 2009, at 8:39 PM, Ivan wrote:

> It is in http://repository.apache.org/snapshots. But this site is in  
> the root pom file, it should not have problem in downloading this  
> module.
> Ivan
>
> 2009/6/18 Jason Dillon <ja...@planet57.com>
> My trunk build keeps puking on:
>
> <snip>
> Missing:
> ----------
> 1) org.apache.geronimo.ext.tomcat:jasper:jar:6.0.18-SNAPSHOT
>
>  Try downloading the file manually from the project website.
>
>  Then, install it using the command:
>      mvn install:install-file - 
> DgroupId=org.apache.geronimo.ext.tomcat -DartifactId=jasper - 
> Dversion=6.0.18-SNAPSHOT -Dpackaging=jar -Dfile=/path/to/file
>
>  Alternatively, if you host your own repository you can deploy the  
> file there:
>      mvn deploy:deploy-file -DgroupId=org.apache.geronimo.ext.tomcat  
> -DartifactId=jasper -Dversion=6.0.18-SNAPSHOT -Dpackaging=jar - 
> Dfile=/path/to/file -Durl=[url] -DrepositoryId=[id]
>
>  Path to dependency:
>        1) org.codehaus.mojo.jspc:jspc-maven-plugin:maven-plugin:2.0- 
> alpha-2
>        2) org.apache.geronimo.ext.tomcat:jasper:jar:6.0.18-SNAPSHOT
>
> </snip>
>
> Where is this dep?
>
>
> --jason
>
>
> On Jun 18, 2009, at 4:31 AM, David Jencks wrote:
>
>
> On Jun 17, 2009, at 1:36 AM, Jason Dillon wrote:
>
> Why do the assemblies in the repository have dependencies?  I  
> realize that they are probably there to facilitate the build, but  
> shouldn't they all be marked as <scope>provided</scope>?
>
> The reason I think they should be, is that when a user wants to use  
> the geronimo-maven-plugin with the assembly -bin in the repository,  
> before they can even download the assembly -bin, first mvn has to go  
> resolve every single dependency which is used to build that assembly  
> -bin.
>
> I think this is broken, while I can resolve by adding a tone of  
> excludes, I think that this problem should be solved so that users  
> can more easily consume the assembly artifacts we publish to the  
> repository.
>
> Any one know how easy/feasible with the current stuff (trunk and  
> 2.1.x) it would be to mark all dependencies as provided?
>
> Just thinking about it I don't see why it would cause problems.   
> Would you like to try it and see if the server at least builds?  If  
> there are no obvious problems I'd be fine with this change.
>
> thanks
> david jencks
>
>
> --jason
>
>
>
>
> -- 
> Ivan


Re: Assemblies in the repo and their dependencies

Posted by Ivan <xh...@gmail.com>.
It is in http://repository.apache.org/snapshots. But this site is in the
root pom file, it should not have problem in downloading this module.
Ivan

2009/6/18 Jason Dillon <ja...@planet57.com>

> My trunk build keeps puking on:
>
> <snip>
> Missing:
> ----------
> 1) org.apache.geronimo.ext.tomcat:jasper:jar:6.0.18-SNAPSHOT
>
>  Try downloading the file manually from the project website.
>
>  Then, install it using the command:
>      mvn install:install-file -DgroupId=org.apache.geronimo.ext.tomcat
> -DartifactId=jasper -Dversion=6.0.18-SNAPSHOT -Dpackaging=jar
> -Dfile=/path/to/file
>
>  Alternatively, if you host your own repository you can deploy the file
> there:
>      mvn deploy:deploy-file -DgroupId=org.apache.geronimo.ext.tomcat
> -DartifactId=jasper -Dversion=6.0.18-SNAPSHOT -Dpackaging=jar
> -Dfile=/path/to/file -Durl=[url] -DrepositoryId=[id]
>
>  Path to dependency:
>        1) org.codehaus.mojo.jspc:jspc-maven-plugin:maven-plugin:2.0-alpha-2
>        2) org.apache.geronimo.ext.tomcat:jasper:jar:6.0.18-SNAPSHOT
>
> </snip>
>
> Where is this dep?
>
> --jason
>
>
> On Jun 18, 2009, at 4:31 AM, David Jencks wrote:
>
>
>> On Jun 17, 2009, at 1:36 AM, Jason Dillon wrote:
>>
>>  Why do the assemblies in the repository have dependencies?  I realize
>>> that they are probably there to facilitate the build, but shouldn't they all
>>> be marked as <scope>provided</scope>?
>>>
>>> The reason I think they should be, is that when a user wants to use the
>>> geronimo-maven-plugin with the assembly -bin in the repository, before they
>>> can even download the assembly -bin, first mvn has to go resolve every
>>> single dependency which is used to build that assembly -bin.
>>>
>>> I think this is broken, while I can resolve by adding a tone of excludes,
>>> I think that this problem should be solved so that users can more easily
>>> consume the assembly artifacts we publish to the repository.
>>>
>>> Any one know how easy/feasible with the current stuff (trunk and 2.1.x)
>>> it would be to mark all dependencies as provided?
>>>
>>
>> Just thinking about it I don't see why it would cause problems.  Would you
>> like to try it and see if the server at least builds?  If there are no
>> obvious problems I'd be fine with this change.
>>
>> thanks
>> david jencks
>>
>>
>>> --jason
>>>
>>
>


-- 
Ivan

Re: Assemblies in the repo and their dependencies

Posted by Jason Dillon <ja...@planet57.com>.
My trunk build keeps puking on:

<snip>
Missing:
----------
1) org.apache.geronimo.ext.tomcat:jasper:jar:6.0.18-SNAPSHOT

   Try downloading the file manually from the project website.

   Then, install it using the command:
       mvn install:install-file - 
DgroupId=org.apache.geronimo.ext.tomcat -DartifactId=jasper - 
Dversion=6.0.18-SNAPSHOT -Dpackaging=jar -Dfile=/path/to/file

   Alternatively, if you host your own repository you can deploy the  
file there:
       mvn deploy:deploy-file -DgroupId=org.apache.geronimo.ext.tomcat  
-DartifactId=jasper -Dversion=6.0.18-SNAPSHOT -Dpackaging=jar -Dfile=/ 
path/to/file -Durl=[url] -DrepositoryId=[id]

   Path to dependency:
   	1) org.codehaus.mojo.jspc:jspc-maven-plugin:maven-plugin:2.0-alpha-2
   	2) org.apache.geronimo.ext.tomcat:jasper:jar:6.0.18-SNAPSHOT

</snip>

Where is this dep?

--jason


On Jun 18, 2009, at 4:31 AM, David Jencks wrote:

>
> On Jun 17, 2009, at 1:36 AM, Jason Dillon wrote:
>
>> Why do the assemblies in the repository have dependencies?  I  
>> realize that they are probably there to facilitate the build, but  
>> shouldn't they all be marked as <scope>provided</scope>?
>>
>> The reason I think they should be, is that when a user wants to use  
>> the geronimo-maven-plugin with the assembly -bin in the repository,  
>> before they can even download the assembly -bin, first mvn has to  
>> go resolve every single dependency which is used to build that  
>> assembly -bin.
>>
>> I think this is broken, while I can resolve by adding a tone of  
>> excludes, I think that this problem should be solved so that users  
>> can more easily consume the assembly artifacts we publish to the  
>> repository.
>>
>> Any one know how easy/feasible with the current stuff (trunk and  
>> 2.1.x) it would be to mark all dependencies as provided?
>
> Just thinking about it I don't see why it would cause problems.   
> Would you like to try it and see if the server at least builds?  If  
> there are no obvious problems I'd be fine with this change.
>
> thanks
> david jencks
>
>>
>> --jason


Re: Assemblies in the repo and their dependencies

Posted by Jason Dillon <ja...@planet57.com>.
I am having trouble getting trunk to build atm, so I looked at 2.1  
first.  Right away this bit of magic in the pom failed:

<snip>
                     <execution>
                         <id>copy-framework</id>
                         <phase>process-resources</phase>
                         <goals>
                             <goal>run</goal>
                         </goals>
                         <configuration>
                             <tasks>
                                 <mkdir dir="$ 
{project.build.directory}/assembly"/>
                                 <copy todir="$ 
{project.build.directory}/assembly">
                                     <fileset dir="$ 
{project.build.directory}/unpack/geronimo-framework-${version}">
                                     </fileset>
                                 </copy>
                                 <java  
classname="org.apache.geronimo.jaxws.builder.GShellCommandRegistration"
                                       fork="yes" failonerror="true">
                                    <classpath  
refid="maven.runtime.classpath"/>
                                    <arg value="$ 
{project.build.directory}/assembly"/>
                                    <arg value="gsh-wsgen.properties"/>
                                 </java>
                             </tasks>
                         </configuration>
                     </execution
</snip>

Obviously because the antrun classpath did not pick up anything,  
easily resolved by using dependencies for this plugin (or moving to  
gmaven, still unsure if mvn can handle redef of the plugin with  
dependencies in cases like this).

Then build dies missing legal files:

<snip>
[INFO] [tools:verify-legal-files {execution: verify-legal-files}]
[INFO] Checking legal files in: geronimo-tomcat6-javaee5-2.1.5- 
SNAPSHOT-bin.zip
[INFO]  
------------------------------------------------------------------------
[ERROR] BUILD ERROR
[INFO]  
------------------------------------------------------------------------
[INFO] Artifact does not contain any legal files: geronimo-tomcat6- 
javaee5-2.1.5-SNAPSHOT-bin.zip

[INFO]  
------------------------------------------------------------------------
[INFO] For more information, run Maven with the -e switch
[INFO]  
------------------------------------------------------------------------
[INFO] Total time: 1 minute 13 seconds
[INFO] Finished at: Thu Jun 18 20:03:26 ICT 2009
[INFO] Final Memory: 99M/177M
[INFO]  
------------------------------------------------------------------------
</snip>

So at least on 2.1 there looks to be some thing about dependency scope  
which is needed for the assembly to function.  Once I get trunk to  
build I will check there too.

--jason


On Jun 18, 2009, at 4:31 AM, David Jencks wrote:

>
> On Jun 17, 2009, at 1:36 AM, Jason Dillon wrote:
>
>> Why do the assemblies in the repository have dependencies?  I  
>> realize that they are probably there to facilitate the build, but  
>> shouldn't they all be marked as <scope>provided</scope>?
>>
>> The reason I think they should be, is that when a user wants to use  
>> the geronimo-maven-plugin with the assembly -bin in the repository,  
>> before they can even download the assembly -bin, first mvn has to  
>> go resolve every single dependency which is used to build that  
>> assembly -bin.
>>
>> I think this is broken, while I can resolve by adding a tone of  
>> excludes, I think that this problem should be solved so that users  
>> can more easily consume the assembly artifacts we publish to the  
>> repository.
>>
>> Any one know how easy/feasible with the current stuff (trunk and  
>> 2.1.x) it would be to mark all dependencies as provided?
>
> Just thinking about it I don't see why it would cause problems.   
> Would you like to try it and see if the server at least builds?  If  
> there are no obvious problems I'd be fine with this change.
>
> thanks
> david jencks
>
>>
>> --jason


Re: Assemblies in the repo and their dependencies

Posted by Jason Dillon <ja...@planet57.com>.
Okay, I will give it a shot on trunk first, if that works I will try  
on branches/2.1.

--jason


On Jun 18, 2009, at 4:31 AM, David Jencks wrote:

>
> On Jun 17, 2009, at 1:36 AM, Jason Dillon wrote:
>
>> Why do the assemblies in the repository have dependencies?  I  
>> realize that they are probably there to facilitate the build, but  
>> shouldn't they all be marked as <scope>provided</scope>?
>>
>> The reason I think they should be, is that when a user wants to use  
>> the geronimo-maven-plugin with the assembly -bin in the repository,  
>> before they can even download the assembly -bin, first mvn has to  
>> go resolve every single dependency which is used to build that  
>> assembly -bin.
>>
>> I think this is broken, while I can resolve by adding a tone of  
>> excludes, I think that this problem should be solved so that users  
>> can more easily consume the assembly artifacts we publish to the  
>> repository.
>>
>> Any one know how easy/feasible with the current stuff (trunk and  
>> 2.1.x) it would be to mark all dependencies as provided?
>
> Just thinking about it I don't see why it would cause problems.   
> Would you like to try it and see if the server at least builds?  If  
> there are no obvious problems I'd be fine with this change.
>
> thanks
> david jencks
>
>>
>> --jason


Re: Assemblies in the repo and their dependencies

Posted by David Jencks <da...@yahoo.com>.
On Jun 17, 2009, at 1:36 AM, Jason Dillon wrote:

> Why do the assemblies in the repository have dependencies?  I  
> realize that they are probably there to facilitate the build, but  
> shouldn't they all be marked as <scope>provided</scope>?
>
> The reason I think they should be, is that when a user wants to use  
> the geronimo-maven-plugin with the assembly -bin in the repository,  
> before they can even download the assembly -bin, first mvn has to go  
> resolve every single dependency which is used to build that assembly  
> -bin.
>
> I think this is broken, while I can resolve by adding a tone of  
> excludes, I think that this problem should be solved so that users  
> can more easily consume the assembly artifacts we publish to the  
> repository.
>
> Any one know how easy/feasible with the current stuff (trunk and  
> 2.1.x) it would be to mark all dependencies as provided?

Just thinking about it I don't see why it would cause problems.  Would  
you like to try it and see if the server at least builds?  If there  
are no obvious problems I'd be fine with this change.

thanks
david jencks

>
> --jason