Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
[polarsys-iwg] Eclipse Tool Stack Interchange Format v0.1

Hi Everybody,

It was great to get to meet most of you last week at EclipseCon.  I
was encouraged by the feeling of comradery within the group and look
forward to the next time we can talk face to face.

Following up on the idea I talked about during the BOF, Tim and I have
put together the beginning of a file format specification for
describing Eclipse-based development environments.  We'd like to hear
feedback from the working group on the applicability, design, and
implications of the format.

Clearly, this is a work in progress as large sections are missing or
need flushing out.  Although it is derived from our combined knowledge
of writing Eclipse delivery platforms, we do not believe we are the
only authority on this matter.  We feel strongly that the more
feedback and discussion that goes into this specification, the better
it will serve all of us.

To that end, please take some time to read the specification document
and example XML and provide comments.  We intend to include the
example XML as an exemplary part of the specification, but find it
more legible in an XML editor so for the time we will include it as a
separate attachment.

Cheers,
Jed Anderson
Genuitec, LLC
<?xml version="1.0" encoding="UTF-8"?>
<ts:tool-stack 
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"; 
	xmlns:ts="http://genuitec.com/xml/ns/etsif"; 
	xmlns:e="http://genuitec.com/xml/ns/etsif/eclipse"; 
	xmlns:j="http://genuitec.com/xml/ns/etsif/jvm"; 
	uuid="254cd0e0-9c89-11e2-9e96-0800200c9a66"
	range="[1.0.0.v201304021200]"
	xsi:schemaLocation="http://genuitec.com/xml/ns/etsif.xsd,http://genuitec.com/xml/ns/etsif/eclipse/eclipse.xsd,http://genuitec.com/xml/ns/etsif/eclipse/jvm.xsd";>

	<ts:identifiers>
		<ts:identifier namespace="com.example.toolstacks" name="myteamdev" range="[1.0.0.v201304021200]" />
	</ts:identifiers>		

	<ts:tool id="my_team_dev_eclipse" range="[4.2.2]">
		<ts:branding title="My Team Dev Eclipse" public-version="Juno 4.2.2">
			<ts:description>An environment for my team's development.</ts:description>
			<ts:icons>
				<ts:icon location="branding/myTeamDev.png" size="64x64" />
				<ts:icon location="branding/myTeamDev.ico" />
				<ts:icon location="branding/myTeamDev.xpm" />
				<ts:icon location="branding/myTeamDev.icns" />
			</ts:icons>
		</ts:branding>
		<ts:uses>
			<ts:use-tool id="com.oracle.java.jdk" range="[1.6.0_42]" />
			<ts:use-tool id="com.oracle.java.jdk" range="[1.7.0_17]" />
		</ts:uses>
		<ts:applicability>
			<ts:platform os="win32" arch="x86"/>
			<ts:platform os="win32" arch="x86_64"/>
			<ts:platform os="linux" arch="x86" ws="gtk"/>
			<ts:platform os="linux" arch="x86_64" ws="gtk"/>
			<ts:platform os="macosx" arch="x86" ws="cocoa"/>
			<ts:platform os="macosx" arch="x86_64" ws="cocoa"/>
		</ts:applicability>
		<ts:identifiers>
			<ts:identifier namespace="org.eclipse.platform" name="myteamdev" range="[1.0.0.v201304021200]" />
		</ts:identifiers>		
		<e:eclipse>
			<e:contents>
				<e:extends namespace="org.eclipse.epp" name="j2ee" range="[4.2.0, 4.3.0)" location="(optional)" />
				<e:software name="com.example.tool1">
					<e:include>
						<e:repository location="http://foo.com/updates/repo1"; />
						<e:iu id="com.example.iu" range="0.0.0" />
						<e:requires namespace="java.package" name="com.example.requirement" range="0.0.0" />						
					</e:include>
				</e:software>
				<e:software name="com.eatlassw.checkstyle">
					<ts:branding title="Checkstyle"/>
					<e:include>
						<e:repository location="http://eclipse-cs.sourceforge.net/update"/>
						<e:iu id="com.atlassw.tools.eclipse.checkstyle" range="[5.6.0_v201301011200]" />
					</e:include>
				</e:software>
				<e:software name="com.example.tool2">
					<e:include-all>
						<e:repository location="http://foo.com/updates/repo2/metadata"; contains-artifacts="false" />
						<e:repository location="http://foo.com/updates/repo2/artifacts"; contains-metadata="false" />
					</e:include-all>
				</e:software>
			</e:contents>
			<e:install-configuration>
				<e:install-folder name="MyDevEclipse" />
			</e:install-configuration>
			<e:ini-settings>
				<e:java-virtual-machine>
					<used-tool-ref id="com.oracle.jdk" range="[1.6.0_42]" />
				</e:java-virtual-machine>
				<e:program-arguments>
					<e:argument>customPluginArg customValue</e:argument>
					<e:argument>-console</e:argument>
					<e:argument>-noSplash</e:argument>
				</e:program-arguments>
				<e:virtual-machine-arguments>
					<e:argument>-Xmx712m</e:argument>
				</e:virtual-machine-arguments>
				<e:config-properties>
					<property name="com.example.custom" value="property" />
					<property name="osgi.instance.area.default" value="@user.home/Workspaces/MyTeamDevWS"/>				
				</e:config-properties>
			</e:ini-settings>
			<e:workspace-configuration>
				<e:project-set location="workspace/myDevEnv.psf" />
				<e:preferences location="workspace/myDevEnv.epf" />
			</e:workspace-configuration>
		</e:eclipse>
	</ts:tool>
	
	<ts:tool id="com.oracle.java.jdk" range="[1.6.0_42]">
		<ts:applicability>
			<ts:platform os="win32" arch="x86"/>
			<ts:platform os="win32" arch="x86_64"/>
			<ts:platform os="linux" arch="x86" ws="gtk"/>
			<ts:platform os="linux" arch="x86_64" ws="gtk"/>
			<ts:platform os="macosx" arch="x86_64" ws="cocoa"/>
		</ts:applicability>
		<j:java-virtual-machine range="[1.6.0_42]" flavor="jdk">
			<j:archive location="jdks/oracle_jdk_1.6.0_42_win32_x86.zip">
				<ts:applicability>
					<ts:platform os="win32" arch="x86" exact="true"/>
					<ts:platform os="win32" arch="x86_64"/>
				</ts:applicability>
			</j:archive>
			<j:archive location="jdks/oracle_jdk_1.6.0_42_win32_linux.zip">
				<ts:applicability>
					<ts:platform os="linux" arch="x86" exact="true"/>
					<ts:platform os="linux" arch="x86_64"/>
				</ts:applicability>			
			</j:archive>
			<j:archive location="jdks/oracle_jdk_1.6.0_42_win32_x86_macosx.zip">
				<ts:applicability>
					<ts:platform os="macosx" arch="x86_64" ws="cocoa" exact="true"/>
				</ts:applicability>			
			</j:archive>
		</j:java-virtual-machine>
	</ts:tool>
	
	<ts:tool id="com.oracle.java.jdk" range="[1.7.0_17]">
		<ts:applicability>
			<ts:platform os="win32" arch="x86"/>
			<ts:platform os="win32" arch="x86_64"/>
			<ts:platform os="linux" arch="x86" ws="gtk"/>
			<ts:platform os="linux" arch="x86_64" ws="gtk"/>
			<ts:platform os="macosx" arch="x86_64" ws="cocoa"/>
		</ts:applicability>
		<j:java-virtual-machine range="[1.7.0_17]" flavor="jdk">
			<j:archive location="jdks/oracle_jdk_1.7.0_17_win32_x86.zip">
				<ts:applicability>
					<ts:platform os="win32" arch="x86" exact="true"/>
					<ts:platform os="win32" arch="x86_64"/>
				</ts:applicability>
			</j:archive>
			<j:archive location="jdks/oracle_jdk_1.7.0_17_win32_linux.zip">
				<ts:applicability>
					<ts:platform os="linux" arch="x86" exact="true"/>
					<ts:platform os="linux" arch="x86_64"/>
				</ts:applicability>			
			</j:archive>
			<j:archive location="jdks/oracle_jdk_1.7.0_17_win32_x86_macosx.zip">
				<ts:applicability>
					<ts:platform os="macosx" arch="x86_64" ws="cocoa" exact="true"/>
				</ts:applicability>			
			</j:archive>
		</j:java-virtual-machine>
	</ts:tool>
</ts:tool-stack>

Attachment: EclipseToolStackInterchangeFormat_v0.1.pdf
Description: Adobe PDF document


Back to the top