Closed danieldietrich closed 13 years ago
For some questions, the Maven-PDE integration is "Tycho":http://www.eclipse.org/tycho/ ("wiki":http://wiki.eclipse.org/Category:Tycho).
Hmm... the GitHub Flavored Markdown formatter is also funny ;-)
Had also fun with the GitHub Flavored Markdown :-) Especially I like the unpredictable ordered / unordered list behavior.
Great idea that we will put the dependencies on a p2 update site. Perhaps we can put there a release, too, when making progress with the dsl's and all the generator magic :-) Regarding the other dependencies: The Eclipse and the Xtext dependencies should be available on existing p2 update sites - we can reference these, if possible. For the moment there are not much more dependencies. Guice and Junit should be part of Xtext. We need apache common-io - that's it, right?
I have created the folder danieldietrich.net/eclipse on my webspace. You will receive the user/pass in a minute...
Tycho 0.13.0 not yet working with m2e. had to use 0.12.0.
0.12.0 is fine there seems to be a workaround (https://bugs.eclipse.org/bugs/show_bug.cgi?id=351842) but I'm a friend of clean and stable versions :-)
I guess it's not that bug, but I've found my own workaround that makes 0.13.0 usable. :-)
Working with p2 update sites is killing me (at least with the typical lousy connection here in Indonesia). I just wish p2's resolver is more greedy in caching repository metadatas, I think it's downloading the same thing over and over again anytime I try to do something. :-(
yes, that's what i am experiencing, too. working with eclipse update sites is sloooow, although the internet connection is ok here. can't imagine how slow it might be for you - but you take advantage of the coffee connection at java ;-)
The target definition is at net.danieldietrich.protectedregions.target/indigo.target Use it as "Set as Target Platform". You can add more required plugins.
as of 4 Oct 2011, if you have trouble "Unresolveable build extension" with Tycho and m2e/PDE, here's a workaround:
1. Change the tycho-version to 0.12.0
2. Let m2e install the Tycho Configurator and restart Eclipse
3. Change tycho-version back to 0.13.0
PS: GitHub's auto-linking of commits to issue numbers is quite neat. :)
Why half-done? Right now my laptop is still downloading a 6,3 MB ICU jar which has been doing so for the past 15 minutes or so, and I still have a bunch more artifacts to go (Resolving Target Definition at 54%... :( ).
It's downloading something I already have in my hard drive! p2 really needs to get a bit smarter, my Eclipse IDE and the .target definition use pretty much the exact same update sites, why is it re-downloading? why not at least reuse the IDE files themselves as "cache"? ................ I guess Eclipse devs are all on blazing fast internets #sigh
currently reading about tycho+m2e. i am curious to see how it all fits together!!
have to use that fancy github auto-linking stuff, too ;-)
just read the files you committed - you are an eclipse virtuoso!
You've done an amazing job with the project setup!! Thank you, I am learning so much. The commons-io jar is currently not found which will be placed in our p2 repo I guess (UPDATE: I saw it in the eclipse orbit p2 update site) and the source folder in net.dd.protectedregions.xtext is not recognized (UPDATE: just pushed fix). I'm knitting around a little bit with that, it's a good finger exercise for me regarding tycho.
Btw: The installation with tycho 0.13.0 was flawless! Needed no workaround. I am running Eclipse Indigo SR1 for JEE Devs with the following plugins: EGit, m2e, JBoss Tools 3.3, Google Plugin and Xtext (all installed via Marketplace).
New to all this m2e-tycho voodoo magic I went the following way. Does this sound ok for you, Hendy?
Install EGit - Git Team Provider and Maven Integration for Eclipse (m2e) (via Marketplace).
git clone git@github.com:danieldietrich/xtext-protectedregions.git
Apache Commons IO and a bunch of other open source libraries is available here: http://download.eclipse.org/tools/orbit/downloads/
I put the latest "stable" version repo in the .target, so it should be found. (where "stable" is less than "release", but more recent)
hendy, thank you for the detailed description! one more question: you use two eclipse distros: one for modelling and one for jee development (for example). does you bundle your generator and use/call it in the jee distro? or do you generate directly in the modelling distro? just for the sake...
Daniel: either choice, depending whether I need "rapid prototyping" or not.
One reason why I upgraded to a 8 GB laptop is so I can launch 2 Eclipse instances at will, with separate workspaces. But sometimes workspaces share a project or two.
During the "DSL/generator development" phase, usually I will launch Modeling just for the modeling and DSL. After editing the textual model, I will launch MWE2 to generate the files to the target project. The target project is in Eclipse JEE, and I test the generated files there.
During development of a textual model (i.e. the DSL/generator is more "stable"), I need rapid prototyping. I install Xtext into my Eclipse Java EE distro, and install needed DSL(s) into the workspace. So I can just Ctrl+S a textual model and get the generated Java files etc. instantly. Since there's Xtext SDK there anyway, the Java EE distro can be used to modify the DSL/generator if wanted.
But I tend to keep my distros as light as possible, only the necessary plugins, not combining multiple work environments into one big jumbo Eclipse. Reason is to avoid conflicting Eclipse plug-ins, and maybe to conserve memory, or (atthough theoretically, there should be no problem) who knows what problems may occur due to too many installed plug-ins.
Closing this issue, let me know if you still have problems with Tycho.
spoke to soon..
Done.
noticed, that you removed .classpath and .project from some .gitignore files. do we need them because of the compile time project dependencies?
Honestly speaking, I'm not entirely sure. If you confirm that you can load the project correctly without pre-existing .classpath and .project files then I guess it's safe to ignore them from Git. :-)
What I know for sure is that build.properties and META-INF/MANIFEST.MF are mandatory for Tycho (and PDE) projects.
i will try it being back at home...
What are the best practices?
net.danieldietrich.protectedregions
andnet.danieldietrich.protectedregions.xtext
Many questions...