Has there been any thought to talking to the eclipse team to perhaps for them to integrate Maven support within the eclipse platform?

Kenney Westerhof wrote:
On Mon, 19 Sep 2005, Ashley Williams wrote:

Hi,

Jumping the gun in assuming that no such project yet exists (google
research), I'd like to make a pitch for any willing and experienced
eclipse plugin writers out there to think about starting one...

I really think the mevenide guys should start supporting m2 instead, but
it doesn't look like that's going to happen soon :) Also, have you looked
at the mevenide code? It looks like it's pretty hard to make an eclipse
plugin.

My thoughts are that there are 100 Eclipse users to every Maven user
(from the made-up stats company) and that Eclipse is becoming a bit
of an iTunes for Java. In other words if Maven doesn't have a
presence in Eclipse then it just won't get seen and remain this great
niche product. It's also my guess that there are many existing Maven
users out there who like me reluctantly use the command line
interface to Maven. Not to say it isn't done well, but my
expectations today are that I should be able for example create a new
maven project from within Eclipse rather than typing 'm2
archetype:create -DgroupId=com.foo -DartifactId=bar -Dmaven-archetype-
something=webapp'.

I currently just create 'external tasks' that do these things for me.
I have 2 versions for each task: a global one that operates on the root
pom, and a version that operates on the currently selected project
(using ${expressions} in eclipse). Not ideal but it works - i only wish
you could drag&drop external task buttons to the taskbar, and that I had
a POM editor.

So as a start how about this for an action plan:

"Write an eclipse maven integration plugin that offers basic maven
services.

1. This plugin should contain a distribution of maven that is fully
installed as a result of installing the plugin. Benefit would be that
there is the minimum barrier/number-of-keystrokes to enjoying Maven
through eclipse.

That's one of the things I hated in mevenide: it prevented me from easily
using my locally installed version. As I'm a maven2 developer, I need to
work with the bleeding edge version, not some old prepackaged version.
At at the very least, it should have an option to specify the location
of your m2 installation.
But having a dependency on a completely functional m2 eclipse package is a
must have for new maven users.

2. There should be a 'new project' wizard that can connect to a pom
url in a source code repository, automatically checking out and
creating the eclipse project in doing so. For example you might type:
'svn:http://mysvnrepos/trunk/pom.xml' in the text field presented to
you. Besides not having to use the command line, additional benefit
would be that you don't need to know or care where on disk the source
code is checked out to.

I really like to know on what location projects are cluttering up my
harddisk :)

I like to propose a simple alternative: since it is a eclipse maven2
plugin, it is eclipse aware. Since there are already 'Team' plugins
(Subclipse, CVS etc), which already can checkout projects in a 'New
project wizard', all that's left is to detect that it is a maven2 project
(nature) and generate the eclipse files from the poms.

3. Modifying the pom should result in the project being updated.
Currently if I edit the pom to add in a new dependency, I have to
switch to the command line, navigate to my pom directory, invoke 'm2
eclipse:eclipse', switch back to my editor, make sure my project is
highlighted and then press F5 to refresh the project. Benefit would
be not having to do all that, in particular not caring about where
the source code is on disk.

I use the external task for this. I set that task to update my project
after task completion. Just one mouseclick! :)
But you're right, the plugin should  detect pom changes (preferrably also
having a GUI pom editor, not an xml editor) and regenerate the eclipse
files.

4. Pom resource files should have custom GUI editor. For example it
would be much easier if I enter the project name, description
dependencies etc in text fields rather than tinkering with the xml by
hand."

Yup. A must have!

5. Releases of this project should be timeboxed and monthly."

?define timeboxed :)

This is not a functional requirement.. but maybe continuum could
publish the nightlies on a separate eclipse remote site so you can
update every day if you want (and specify the 'snapshot eclipse update
site' ;))

****************

This plan is the first to spring to mind so feel free to make any
suggestions. I'm hoping that the skills needed are mostly eclipse
plugin authoring since a lot of functionality would involve
delegating to existing maven plugins such as eclipse:eclipse and
scm:XXX.

AW

Great suggestion!
Do you intend to start a new project or poke the mevenide guys for commit
rights? :)

(can't wait for this to be finished!)

-- Kenney


On 19 Sep 2005, at 12:19, Ashley Williams wrote:

Wishing to exclusively work from eclipse and abandon the command
line, I was hoping to find an eclipse plugin that would let me use
maven services direct from within eclipse. I did find the following:

http://mevenide.codehaus.org/mevenide-ui-eclipse/features.html
http://www.binamics.com/mavenworkshop/

but can't tell if they support m2 or if they are still active. Does
anyone else have a recommendation?

Thanks
AW

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


--
Kenney Westerhof
http://www.neonics.com
GPG public key: http://www.gods.nl/~forge/kenneyw.key

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to