Noel J. Bergman wrote:
More importantly, if [it] is a correct fact, as you state and Alex also
mentioned as a proble, that you need to create a repository for maven to
work at all is reason to not use Maven. If maven cannot work
standalone, it
should not be used. Please tell me that Maven is not really that stupid
a
build system.
Well, it seems that you're really against maven at all.
Read the above again. What I said is that IF Maven cannot run disconnected,
THEN I am against using it. YES. Absolutely. But if Maven CAN run
disconnected, then the predicate is false. And you appear to be saying that
it can ...
Once you have all the dependencies maven works even disconnected.
You need all the plugins in your local repository and all the
dependencies (system/test/runtime/compile) in your local repository.
I could change the configuration to use local jars [instead]
of using repositories
So that would solve the problem?
This would solve the problem of downloading the dependencies, but not
the one of downloading the maven plugin needed.
Btw one of the main maven feature is that it automatically do this
stuff, maybe it does not make sense to use maven if you want to manage
it all manually.
but maven repositories are really a good thing. IMO they are
the solution, not the problem.
A solution to what?
1) To dependency management
2) To avoid to store the same jars everywhere in the work when we could
simply declare we depend on "groupId:artifactId:version".
(You reference to svn copy and waste of resources are really similar to
this scenario)
I want to run svn up, then be disconnected from the Internet, and still be
able to work.
This does not work even with other projects if you don't have dependencies.
Hardware, the Operative System, the JDK, Ant, Maven, ant tools, maven
plugins are all dependencies.
What I don't understand is that we talked a lot of time about removing
jars from our svn repository because jars should not be included in svn
within sources and everyone seemed to agree, but I don't understand what
is the solution you are proposing to this.
Furthermore I currently use it in server code just to create the
website.
As a practical matter, I'm more concerned about our project builds than the
web-site builds, although I'd like to be able to do everything while
disconnected.
--- Noel
It depends on when you want to disconnect ;-)
If you already have all of the dependencies installed in your local
repository you're safe.
If you have all of the dependencies in non-maven2 form (official
download) you can mannually install each of them in your local
repository but this will become a PITA because maven is really modular
and the plugins used in a build process are really many!
If you do this then we can get your repository and publish it as "james
repository" so the whole james build could be done using *ONLY* that
repository.
Btw all of this things are not james specific. I think that the maven
list would be more appropriate for this discussion.
Btw I still don't get where you add security: I bet that you never
checked that the jars I uploaded to our repository are official and
signed. In fact most of them have been built by me and have no signature
(phoenix itself has been build by me).
Why should you trust things in our svn more than things automatically
downloaded by the temporary maven repository I setup on
people.apache.org for the current poms?
Stefano