Eclipse Community Forums
Forum Search:

Search      Help    Register    Login    Home
Home » Eclipse Projects » SeMantic Information Logistics Architecture (SMILA) » SMILA Plug-In Development and Maven
SMILA Plug-In Development and Maven [message #674527] Fri, 27 May 2011 09:19 Go to next message
Christoph Diefenthal is currently offline Christoph DiefenthalFriend
Messages: 1
Registered: May 2011
Junior Member
Is there a standard way to integrate SMILA Plug-In development (as described here wiki.eclipse.org/SMILA/Development_Guidelines/Create_a_bundle_%28plug-in%29) with Maven?

I found a way to generate the MANIFEST.MF which includes the Maven-Dependencies and it works, but its more a workaround...

Has anyone ever done Plug-In Development with Maven?


Re: SMILA Plug-In Development and Maven [message #674568 is a reply to message #674527] Fri, 27 May 2011 10:32 Go to previous messageGo to next message
Eclipse UserFriend
Originally posted by:

Am 27.05.2011, 11:19 Uhr, schrieb Christoph Diefenthal
<forums-noreply@eclipse.org>:
> Has anyone ever done Plug-In Development with Maven?

No, sorry, we did not use Maven with SMILA yet.
But if you manage to make it work, it would be great if you could add a
how-to
description to the SMILA wiki (-:

Regards,
Jürgen.
Re: SMILA Plug-In Development and Maven [message #675056 is a reply to message #674527] Mon, 30 May 2011 07:34 Go to previous messageGo to next message
thomas menzel is currently offline thomas menzelFriend
Messages: 81
Registered: July 2009
Member
hi,

are u talking about normal/vanilla maven or the tycho build?

we have tried the latter *a little bit* but gave up on it as it involved
too many changes in smila and some things we couldnt get to work --
which might, in all likelihood, was due to the fact of limited
understanding/knowledge of tycho and resources willing to commit to the
area.

On 27.05.2011 11:19, Christoph Diefenthal wrote:
> Is there a standard way to integrate SMILA Plug-In development (as
> described here
> wiki.eclipse.org/SMILA/Development_Guidelines/Create_a_bundle_%28plug-in%29)
> with Maven?
>
> I found a way to generate the MANIFEST.MF which includes the
> Maven-Dependencies and it works, but its more a workaround...
>
> Has anyone ever done Plug-In Development with Maven?
>
>
>


--
thomas menzel aka tom


thomas menzel aka tom
Re: SMILA Plug-In Development and Maven [message #677826 is a reply to message #675056] Thu, 09 June 2011 14:03 Go to previous messageGo to next message
Martin Röbert is currently offline Martin RöbertFriend
Messages: 16
Registered: December 2010
Location: Leipzig, Germany
Junior Member
Hi there,

as Tom stated, working with Maven and Equinox is pain in the ass. We hooked our libraries in via svn externals - a bit tricky, but if one is aware of that it works like charm.

Another way of handling dependencies is Buckminster. Here you can use repositories of various different technologies to get your dependencies (M2 and Ivy repos for example).

Give it a try Wink
Re: SMILA Plug-In Development and Maven [message #678800 is a reply to message #677826] Thu, 09 June 2011 14:37 Go to previous messageGo to next message
Igor Novakovic is currently offline Igor NovakovicFriend
Messages: 53
Registered: July 2009
Member
Hi Martin,

> as Tom stated, working with Maven and Equinox is pain in the ass. We
> hooked our libraries in via svn externals - a bit tricky, but if one is
> aware of that it works like charm.
Could you please provide us some details (or even better create a Wiki
page under http://wiki.eclipse.org/SMILA/HowTo) so that we and the rest
of the community can profit from it?

Cheers
Igor
Re: SMILA Plug-In Development and Maven [message #781056 is a reply to message #678800] Fri, 20 January 2012 09:18 Go to previous messageGo to next message
Martin Röbert is currently offline Martin RöbertFriend
Messages: 16
Registered: December 2010
Location: Leipzig, Germany
Junior Member
Hi@all,

my last post is quite a while old - and a lot of things have changed. I moved to a new project/employer and am now in the lucky position to work with Eclipse/OSGI again.

One of my first task was to provide a headless build environment for the project we are working on here. I tried PDE Headless and also gave Buckminster a glimpse - until I stumbled over Eclipse Tycho (http://www.eclipse.org/tycho/) again.
This project provides Maven plugins for OSGI/RCP specific tasks - and it's very easy to use. The project structure stays the same, dependencies are gathered from MANIFEST.MF and plugin.xml

All you need is a parent project that bequests the settings to the child projects/modules. "Tripping hazard": The artifact-id and plugin-id, maven-version and plugin-version have to be the same. Thats all. It has cost me half a day to convert all fragments to maven projects and now it works like charm Smile

parent-project pom:
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
	<modelVersion>4.0.0</modelVersion>
	<groupId>your.group.id</groupId>
	<artifactId>your-artifact-name</artifactId>
	<version>1.0-SNAPSHOT</version>
	<packaging>pom</packaging>
	<name>ProBaTe Parent Project</name>
	<!-- tycho requires maven >= 3.0 -->
	<prerequisites>
		<maven>3.0</maven>
	</prerequisites>

	<properties>
		<tycho-version>0.13.0</tycho-version>
	</properties>
	<repositories>
		<!-- configure p2 repository to resolve against -->
		<repository>
			<id>indigo</id>
			<layout>p2</layout>
			<url>http://download.eclipse.org/releases/indigo</url>
			<!-- file URL for faster and offline builds -->
			<!-- <url>file:/${basedir}/../../helios-rcp/</url> -->
		</repository>
		<!-- SWTbot is not part of the helios update site -->
		<repository>
			<id>swtbot</id>
			<layout>p2</layout>
			<url>http://download.eclipse.org/technology/swtbot/helios/dev-build/update-site/</url>
		</repository>
	</repositories>
	<build>
		<plugins>
			<plugin>
				<!-- enable tycho build extension -->
				<groupId>org.eclipse.tycho</groupId>
				<artifactId>tycho-maven-plugin</artifactId>
				<version>${tycho-version}</version>
				<extensions>true</extensions>
			</plugin>
			<plugin>
				<groupId>org.eclipse.tycho</groupId>
				<artifactId>target-platform-configuration</artifactId>
				<version>${tycho-version}</version>
				<configuration>
					<!-- configure the p2 target environments for multi-platform build -->
					<environments>
						<environment>
							<os>linux</os>
							<ws>gtk</ws>
							<arch>x86_64</arch>
						</environment>
						<environment>
							<os>win32</os>
							<ws>win32</ws>
							<arch>x86_64</arch>
						</environment>
					</environments>
				</configuration>
			</plugin>
			<!-- enable source bundle generation -->
			<plugin>
				<groupId>org.eclipse.tycho</groupId>
				<artifactId>tycho-source-plugin</artifactId>
				<version>${tycho-version}</version>
				<executions>
					<execution>
						<id>plugin-source</id>
						<goals>
							<goal>plugin-source</goal>
						</goals>
					</execution>
				</executions>
			</plugin>
		</plugins>
	</build>
</project>


A pom for a eclipse-plugin (and there are even more packaging options, have a look onto https://github.com/jsievers/tycho-demo)
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
	<modelVersion>4.0.0</modelVersion>
	<artifactId>TestplanGenerationPlugin</artifactId>
	<version>1.0.5</version>
	<packaging>eclipse-plugin</packaging>
	<parent>
		<groupId>org.infai.probate</groupId>
		<artifactId>probate-parent</artifactId>
		<version>1.0-SNAPSHOT</version>
		<relativePath>../probate-parent/pom.xml</relativePath>
	</parent>
</project>


Have fun,
Martin
Re: SMILA Plug-In Development and Maven [message #782327 is a reply to message #781056] Mon, 23 January 2012 14:39 Go to previous messageGo to next message
Igor Novakovic is currently offline Igor NovakovicFriend
Messages: 53
Registered: July 2009
Member
Thank you Martin for sharing your experience with us!

Is there any chance that you write this down on a Wiki-Page (e.g.
http://wiki.eclipse.org/SMILA/HowTo/Maven_Build) and post a link in user
and/or dev mailing list so that also the rest of the community can
profit from it?

Cheers
Igor

Am 20.01.2012 10:18, schrieb Martin Röbert:
> Hi@all,
>
> my last post is quite a while old - and a lot of things have changed. I
> moved to a new project/employer and am now in the lucky position to work
> with Eclipse/OSGI again.
>
> One of my first task was to provide a headless build environment for the
> project we are working on here. I tried PDE Headless and also gave
> Buckminster a glimpse - until I stumbled over Eclipse Tycho
> (http://www.eclipse.org/tycho/) again.
> This project provides Maven plugins for OSGI/RCP specific tasks - and
> it's very easy to use. The project structure stays the same,
> dependencies are gathered from MANIFEST.MF and plugin.xml
>
> All you need is a parent project that bequests the settings to the child
> projects/modules. "Tripping hazard": The artifact-id and plugin-id,
> maven-version and plugin-version have to be the same. Thats all. It has
> cost me half a day to convert all fragments to maven projects and now it
> works like charm :)
>
> parent-project pom:
>
> <project xmlns="http://maven.apache.org/POM/4.0.0"
> xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
> xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
> http://maven.apache.org/xsd/maven-4.0.0.xsd">
> <modelVersion>4.0.0</modelVersion>
> <groupId>your.group.id</groupId>
> <artifactId>your-artifact-name</artifactId>
> <version>1.0-SNAPSHOT</version>
> <packaging>pom</packaging>
> <name>ProBaTe Parent Project</name>
> <!-- tycho requires maven >= 3.0 -->
> <prerequisites>
> <maven>3.0</maven>
> </prerequisites>
>
> <properties>
> <tycho-version>0.13.0</tycho-version>
> </properties>
> <repositories>
> <!-- configure p2 repository to resolve against -->
> <repository>
> <id>indigo</id>
> <layout>p2</layout>
> <url>http://download.eclipse.org/releases/indigo</url>
> <!-- file URL for faster and offline builds -->
> <!-- <url>file:/${basedir}/../../helios-rcp/</url> -->
> </repository>
> <!-- SWTbot is not part of the helios update site -->
> <repository>
> <id>swtbot</id>
> <layout>p2</layout>
> <url>http://download.eclipse.org/technology/swtbot/helios/dev-build/update-site/</url>
>
> </repository>
> </repositories>
> <build>
> <plugins>
> <plugin>
> <!-- enable tycho build extension -->
> <groupId>org.eclipse.tycho</groupId>
> <artifactId>tycho-maven-plugin</artifactId>
> <version>${tycho-version}</version>
> <extensions>true</extensions>
> </plugin>
> <plugin>
> <groupId>org.eclipse.tycho</groupId>
> <artifactId>target-platform-configuration</artifactId>
> <version>${tycho-version}</version>
> <configuration>
> <!-- configure the p2 target environments for multi-platform build -->
> <environments>
> <environment>
> <os>linux</os>
> <ws>gtk</ws>
> <arch>x86_64</arch>
> </environment>
> <environment>
> <os>win32</os>
> <ws>win32</ws>
> <arch>x86_64</arch>
> </environment>
> </environments>
> </configuration>
> </plugin>
> <!-- enable source bundle generation -->
> <plugin>
> <groupId>org.eclipse.tycho</groupId>
> <artifactId>tycho-source-plugin</artifactId>
> <version>${tycho-version}</version>
> <executions>
> <execution>
> <id>plugin-source</id>
> <goals>
> <goal>plugin-source</goal>
> </goals>
> </execution>
> </executions>
> </plugin>
> </plugins>
> </build>
> </project>
>
>
> A pom for a eclipse-plugin (and there are even more packaging options,
> have a look onto https://github.com/jsievers/tycho-demo)
>
> <project xmlns="http://maven.apache.org/POM/4.0.0"
> xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
> xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
> http://maven.apache.org/xsd/maven-4.0.0.xsd">
> <modelVersion>4.0.0</modelVersion>
> <artifactId>TestplanGenerationPlugin</artifactId>
> <version>1.0.5</version>
> <packaging>eclipse-plugin</packaging>
> <parent>
> <groupId>org.infai.probate</groupId>
> <artifactId>probate-parent</artifactId>
> <version>1.0-SNAPSHOT</version>
> <relativePath>../probate-parent/pom.xml</relativePath>
> </parent>
> </project>
>
>
> Have fun,
> Martin
Re: SMILA Plug-In Development and Maven [message #789851 is a reply to message #674527] Fri, 03 February 2012 13:48 Go to previous message
Martin Röbert is currently offline Martin RöbertFriend
Messages: 16
Registered: December 2010
Location: Leipzig, Germany
Junior Member
I'll do my very best.

When I am finished writing that part of the documentation in our wiki, I'll contribute it Smile
Previous Topic:SMILA 1.0 released!
Next Topic:Would be SMILA useful in this context?
Goto Forum:
  


Current Time: Sun Dec 21 16:04:56 GMT 2014

Powered by FUDForum. Page generated in 0.02042 seconds
.:: Contact :: Home ::.

Powered by: FUDforum 3.0.2.
Copyright ©2001-2010 FUDforum Bulletin Board Software