Re: maven.
Re: maven.
- Subject: Re: maven.
- From: Henrique Prange <email@hidden>
- Date: Sun, 05 Apr 2009 22:52:18 -0300
Hi Mike,
It seems to me that the huge problem here is the messed documentation we
have for WO+Maven. You are not complaining about bugs yet. :) Wiki is a
impressive tool for collaboration. But it is very difficulty to keep it
organized. There is no comprehensive introductory information for
newbies and the tool set (plug-ins, archetypes and etc) is very confusing.
We should have a concrete site for the WOProject tool set. Maven is
pretty good to generate this kind of documentation. The Wiki could be
reorganized to make general user lives easier. We need a better
structure for the wiki documentation. That is my thought about what can
help to solve the problem. But am I right?
I really miss a visible roadmap for WOLips. I know a lot of people work
hard to improve this tool (it's 22:46 here on Sunday and I haven't eaten
yet). But it is very difficult to know if I'm planning to do something
that other people is already doing. Or if what I want to do is really a
good idea for the entire community.
So, how could we solve this problem concretely? IMHO, we should keep
track of this ideas and issues. We should discuss the solution with each
other and start to split tasks between the people concerned to improve
the WOLips experience for general users (from the beginner to the
advanced).
I really expect that all this discussion lead to concrete improvements.
BTW, Maven+WO documentation is very near of the top of my TODO list. But
I still need to do high priority things first before WOWODC.
Cheers,
Henrique
Lachlan Deck wrote:
On 05/04/2009, at 1:28 AM, Mike Schrag wrote:
SSDD/War builds, sucky (but admittedly essentially never touched)
... Inter-project build dependencies, sucky. #1 I'm guessing Maven
doesn't have much to offer without custom coding, either,
http://wiki.objectstyle.org/confluence/display/WOL/Packaging+WO+Applications+as+true+WAR+with+Maven
Ah yes, touche -- you use jar bundles, I forgot :) Does True War get
to dodge all the annoying weird custom classpathy stuff in web.xml
because of that? Do you guys do an SSDD variant? Would one even WANT
an SSDD if you have an easy true war build?
I don't do war currently so I'll leave this for Henrique to respond...
Creating a simple project is easy in both systems is my suggestion.
Adding project dependencies IMHO is easier with maven.
Granted, the onus is on us to do better with the wiki.
IMO, the simple project is not as simple for WO people to use Maven.
Not that it can't be, but it just isn't now.
Sure. The guides we have definitely need improving.
http://wiki.objectstyle.org/confluence/display/WOL/Quick+Start
http://wiki.objectstyle.org/confluence/display/WOL/Maven+Create+WO+Application+Project
But the templates in woproject (which I specifically updated for this
purpose recently) create a project that's ready to go. These work, as
always, with the standard maven wizard.
So here are my gripes:
Yep - good to get another eye on these.
So right off the bat, what is this "Using Apple Plug-in" at the top.
I know they're working/did work on something also. Is this
overlapping work or in-addition-to work?
Overlapping. We're talking through resolutions to this. e.g., recently
started talking about possibly working towards making whatever changes
necessary to utilise Daryl's wizard in conjunction with the
woproject-maven2 plugin.
Whatever that is needs an explanation in this tutorial -- do i want
it? Do I need to do that before I follow this tutorial?
Good point. I believe the intention was go with one or the other. TODO:
fix.
New Maven Project doesn't appear to actually get defaulted to be a top
level project type in Eclipse,
Do you mean the apple one? The standard m2eclipse one does.
so the tutorial is a little misleading here for total WOLips/Eclipse
newbies.
TODO: review
"Using m2eclipse and woapplication-archetype
The tutorial below supposes you already have installed m2eclipse
plug-in. You also have to copy the archetype catalog to your local
repository as described here. For more information about how to
configure Maven to build WebObjects applications, see this tutorial."
m2eclipse ... I mean, there's nothing you can do here. That is what
it is.
"You also have to copy the archetype catalog to your local repository
as described here. For more information about how to configure Maven
to build WebObjects applications, see this tutorial."
This is for the birds, though :) First of all, wtf is this talking
about. It requires the maven archetype plugin -- i honestly can't
even tell from the site it links to if this is talking about an
Eclipse plugin or a Maven plugin. And it says that I need it, but the
page it links to says "The Archetype Plugin is embedded in IDEs
Eclipse , NetBeans , IDEA." so I'm not sure if I have it already? I
happen to already have these on my machine, but I'm not sure if I just
did this process before or if this got autoinstalled in newer versions
of these plugins.
I also love that this page says "allows the user to create a Maven 2
project from an existing template called an archetype." -- why didn't
you just call it a template, people? I think Maven developers just
like making up new words. This is how I feel about git, too, btw.
:) Yeah I've been playing with git lately using it for an svn project.
Know what you mean.
So I really can't tell from this archetype page whether the commands
listed show me how to install this thing, or whether this is what I
run after I install something. I'm not trying to be dense here, but
this is sort of my point with the "just works" part. If I have to
open a commandline, my IDE failed, IMO. Any way to get this so it's
just setup for people?
All good points.
I don't know if the target of this wiki page is people who know Maven
already or not,
That would currently be true in fairness or at least have some
familiarity with terminology. Will fix.
but I think it's worth sticking a one sentence "wtf is an archetype"
or to that effect ;-)
in Step 0, since step 0 and Step 3 both are making me pick one. But
if this is assuming I already know Maven, then I don't guess it's
worth it since you guys probably already know what they're saying.
So they have these catalogs in step 3 ... Are these remote repo's?
Can Step 0 be removed if this is hosted somewhere?
Step 4 .... wtf is a group id and an artifact id?
:) Right so group id is akin to namespace / java package. Artifact id is
akin to project name. Version is obvious of course. These are the usual
triplet for dependency declarations.
It has a note on the -SNAPSHOT, so I'll accept that :)
The convention is to declare your version as a snapshot until ready to
release. The newby would just stick with 1.0-SNAPSHOT. In fact, I've not
needed to adjust mine from this as we're not sharing stuff with the
outside world (snif).
As an aside:
We use hudson to build and just use the build# from that. e.g., the only
command I need to give hudson is mvn clean package (as well as the dir
for the project of course). For the dependent frameworks they're fired
off first and installed locally on the build server via mvn clean
install. Equally you could just build from the top of the tree (mvn
clean package/install) and grab built projects from target dirs.
Those values I guess make more sense as I start to type and they
appear in the package name, but the screenshot actually is a little
different here -- it looks like group id roughly is "com.mdimension"
and artifact id is "projectname" so my package ends up
com.mdimension.projectname, but I'm not really sure what the
implications are of setting these.
More less than obvious stuff of course.
This properties stuff at the bottom of this wizard has toootallly
gotta go. The red note makes it sound like making this WILL be
supported at some point and it's just not yet?
It works already actually. Removed.
"4/4/09 10:20:08 AM EDT: [ERROR] The desired archetype does not exist
(org.objectstyle.woproject.maven2:woapplication-archetype:2.0.16-SNAPSHOT)
The desired archetype does not exist
(org.objectstyle.woproject.maven2:woapplication-archetype:2.0.16-SNAPSHOT)"
ok .. so I guess i DON'T have this archetype already installed? Going
back to Step zero here ... So it says it's already embedded in
Eclipse on that page, but there's no way that has any meaning if the
next line is telling me to run a commandline thing:
<..>
I get that and the page that linked to said archetype:generate is one
of the goals provided by the plugin, which leads me to believe I
don't, in fact, have that plugin installed. Oh ok, so the yellow box
is saying I can download this thing from the given link. ugh i have
to merge this thing. This file still has webobjects.mdimension.com
URLs in it, but I think you guys are on a different server now. OK
I'm stopping for now ...
.. end comments based on screenshots from tutorial:
Thanks. That's great feedback. Most of it obvious but it's good to get
an unfamiliar eye on it.
I've mentioned this before, but src/main/resources and
src/main/components should not be source folders. They don't contain
Java, so it's kind of weird and confusing to mark them like that.
Yeah, I know we've talked about it before. They default to having
exclude **.
------------------------------------------------------------------------
I've seen other non-wo projects that do this. It depends what you
consider source folders. Are source folders only java folders .. or are
resource folders also source folders for resources. I know internally
Eclipse treats them as IJava...
Random question: what are the rules in src/main/components -- will
those flatten?
Do you want them to? See bottom of:
http://wiki.objectstyle.org/confluence/display/WOL/woapplication-archetype
Random question2: where are my WebServerResources in this screenshot
at the bottom?
TODO: missing from the screenie.
Should be src/main/webserver-resources
It certainly needs polish. The above's a good start imo but I agree
it can improve a lot more to make it a no-brainer for newbies.
I think this is key, and I said it earlier that I'm sure it CAN be
just as simple for people, but it really isn't there yet, IMO.
Very true. It's something I've been wanting to spend more time on...
with regards,
--
Lachlan Deck
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Webobjects-dev mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden
References: | |
| >maven. (From: Mike Schrag <email@hidden>) |
| >Re: maven. (From: Henrique Prange <email@hidden>) |
| >Re: maven. (From: Mike Schrag <email@hidden>) |
| >Re: maven. (From: Lachlan Deck <email@hidden>) |
| >Re: maven. (From: Mike Schrag <email@hidden>) |
| >Re: maven. (From: Lachlan Deck <email@hidden>) |
| >Re: maven. (From: Mike Schrag <email@hidden>) |
| >Re: maven. (From: Lachlan Deck <email@hidden>) |
| >Re: maven. (From: Mike Schrag <email@hidden>) |
| >Re: maven. (From: Lachlan Deck <email@hidden>) |