empire-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Francis De Brabandere" <franci...@gmail.com>
Subject Re: Empire-db and Empire-Struts2-ext distribution with Maven support
Date Sat, 29 Nov 2008 10:54:41 GMT

I'm still not sure we are talking about the same things as you keep
mentioning the 'distribution'... In the maven world your distribution
is uploading artifacts to a maven repository. So for maven users you
want to set up that repository. There is no need to change anything in
the current distribution layout/files. I would only create a pom file
for each artifact and upload that that together with the jar, src jar
and doc jar to a repository. (this will however take time on every
release and we want to keep this period short and go to step 2 [full
maven build] as fast as possible)

The only remaining thing I need here is the *direct* dependencies for
the struts2 ext.

[step 2]
Now if we talk about the source repo (subversion) and you want to
migrate the project to maven the repository should be restructured
(like wicket). As an option you may want to keep the ant build
available (update the build.xml). Once this is taken care of we can
define the "distribution" in the maven build and from then on maven
will generate the distribution file (that can be used by non-maven
see this file for an example distribution configuration:

I hope I made myself clear this time :-)



On Fri, Nov 28, 2008 at 10:52 PM, Rainer Döbele <doebele@esteam.de> wrote:
> Hi Francis,
> do whatever needs to be done for step 1.
> As fas as the distribution layout is concerned I was having a look at other Apache projects
and how they do it.
> Take e.g. Apache Wicket (http://www.apache.org/dyn/closer.cgi/wicket/1.4-rc1) or Apache
CXF (http://cxf.apache.org/download.html)
> We should structure our distribution in a similar fashion so that it best fits Maven.
> But if you think that we can leave our layout and just add the pom-files that's fine
by me.
> I know that the dependencies are not supplied with the Apache Wicket and Apache CXF distribtions
but are fechted by Maven.
> The question is, can we still provide the jars in order to allow a simple ant build and
leave Maven as an option?
> Whatever you do, it should be a good solutions that give the user an adavantage over
the existing approach.
> Let me know if I can be of any help.
> Regards
> Rainer
> P.S. Are you working a lot with databases and have you used Empire-db so far?
> Francis De Brabandere wrote:
>> Re: Information about the empire-struts2-ext distribution
>> Rainer,
>> Thanks for the info but I don't think we are talking about the same thing.
>> Let's think about what a maven user would like from the empire-db project.
>> As a maven user you declare dependencies to other artifacts (jar's) to
>> have them fetched on build/eclipse project setup time. So what you
>> gain is not having to download a distribution or whatever is used to
>> build the library you want to use. All you do is define where the
>> dependencies' artifacts are located (if not in the central repo) and
>> which they are. What you are talking about is that the user can
>> download the "distribution" and build it including samples using
>> maven. I don't see any value in that, I want to *build my* project
>> using maven and *use your* library without too much
>> configuration/setup.
>> So what are the steps to provide empire as dependency in maven:
>> - Create main jar, source jar, and javadoc jar
>> - Define pom for empire (including definitions of the dependencies)
>> - upload everything to a (temporary) repo that the users can define in
>> their project setup.
>> And these steps should be performed for the struts 2 ext as well.
>> Now for dependencies definitions, maven has a system of transitive
>> dependencies, dependencies of dependencies. For example if we take the
>> pom for struts2-core:
>> http://www.mvnrepository.com/artifact/org.apache.struts/struts2-core/2.1.2
>> you can see that this artifact depends on a lot of other artifacts.
>> That was why I was asking you to let me know what the *real*
>> dependencies are for empire struts2. There is no direct dependency for
>> ognl I suppose, this is a struts2 dependency, not a empire struts2 ext
>> one.
>> The point is that preparing all the above is easily done when empire
>> is using using maven for its own build. And that would be step 2. Once
>> the maven repo is set up we could also transform the DBWebSample to a
>> maven build (as step 1.5) so that the example can be run using maven.
>> Summary: set up a (temp) maven repo + transform sample to maven as
>> test, or move the whole empire build to maven (big bang)
>> Regards,
>> Francis

Microsoft gives you windows, Linux gives you the whole house.

View raw message