<project
	xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
	<modelVersion>4.0.0</modelVersion>
	<parent>
		<groupId>org.eclipse.osee</groupId>
		<artifactId>org.eclipse.osee.core.server.parent</artifactId>
		<version>0.26.1-SNAPSHOT</version>
		<relativePath>../../plugins/org.eclipse.osee.core.server.parent</relativePath>
	</parent>
	<artifactId>org.eclipse.osee.core.server.external.feature</artifactId>
	<packaging>eclipse-feature</packaging>
	<name>OSEE X Core External Feature - (Incubation)</name>

	<build>
		<plugins>
			<plugin>
				<groupId>org.eclipse.tycho.extras</groupId>
				<artifactId>tycho-source-feature-plugin</artifactId>
				<executions>
					<execution>
						<phase>package</phase>
						<id>source-feature</id>
						<goals>
							<goal>source-feature</goal>
						</goals>
						<configuration>
							<excludes>
							   <plugin id="org.eclipse.osgi.services" />								
							   <plugin id="com.google.gson" />
							   <plugin id="org.apache.commons.compress" />
							   <plugin id="javax.activation" />
							   <plugin id="ch.qos.logback.slf4j" />
							   <plugin id="org.antlr.runtime" />
							   <plugin id="javax.xml.ws" />
							   <plugin id="javax.xml.rpc" />
							   <plugin id="javax.xml.soap" />
							   <plugin id="org.apache.cxf.cxf-core" />
								<plugin id="javax.transaction" />							   
							   <plugin id="org.apache.cxf.cxf-rt-rs-security-oauth2" />
							   <plugin id="org.apache.cxf.cxf-rt-security" />
							   <plugin id="org.apache.cxf.cxf-rt-transports-http" />
							   <plugin id="org.apache.cxf.cxf-rt-rs-client" />
							   <plugin id="org.apache.cxf.cxf-rt-frontend-jaxrs" />
							   <plugin id="javaewah" />
							   <plugin id="com.google.guava" />
							   <plugin id="com.fasterxml.jackson.core.jackson-core" />
							   <plugin id="com.fasterxml.jackson.core.jackson-annotations" />
							   <plugin id="com.fasterxml.jackson.core.jackson-databind" />
							   <plugin id="ch.qos.logback.classic" />
							   <plugin id="ch.qos.logback.core" />
							   <plugin id="org.eclipse.equinox.ds" />
							   <plugin id="javax.mail" />
							   <plugin id="org.apache.ws.xmlschema.core" />
							   <plugin id="org.postgresql.driver" />
							   <plugin id="org.eclipse.egit" />
							   <plugin id="javax.servlet" />
							   <plugin id="javax.ws.rs" />
							   <plugin id="javax.wsdl" />
							   <plugin id="org.apache.cxf.cxf-rt-rs-security-jose-jaxrs" />
							   <plugin id="org.apache.cxf.cxf-rt-rs-security-jose" />
							   <plugin id="org.apache.cxf.cxf-rt-rs-json-basic" />
							   <plugin id="javax.xml.bind" />
							   <plugin id="org.eclipse.jdt.launching" />
							   <plugin id="javax.annotation" />
							   <plugin id="javax.xml" />
							   <plugin id="com.jcraft.jsch" />
							   <plugin id="org.eclipse.egit" />
							   <plugin id="org.aopalliance" />
							   <plugin id="org.apache.commons.cli" />
							   <plugin id="org.apache.commons.dbcp" />
							   <plugin id="org.apache.commons.io" />
							   <plugin id="org.apache.commons.lang" />
							   <plugin id="org.apache.commons.pool" />
							   <plugin id="org.apache.cxf.core.config" />
							   <plugin id="org.apache.xerces" />
							   <plugin id="org.apache.xml.resolver" />
							   <plugin id="org.apache.xml.serializer" />
							   <plugin id="org.eclipse.core.net" />
							   <plugin id="org.eclipse.equinox.security" />
							   <plugin id= "org.apache.cxf.cxf-rt-rs-service-description" />
							   <plugin id="javax.xml.stream" />
							   <plugin id="org.eclipse.osee.logback.config" />							
							   <plugin id="org.eclipse.osee.web.deploy" />	
							   <plugin id="org.eclipse.osee.web.ui" />
							   <plugin id="org.eclipse.oss.ajax" />
							   <plugin id="org.eclipse.persistence.antlr" />
							   <plugin id="org.eclipse.persistence.asm" />
							   <plugin id="org.eclipse.persistence.core" />
							   <plugin id="org.eclipse.persistence.moxy" />
							   <plugin id="org.jsoup" />
							   <plugin id="org.eclipse.jdt.annotation" />
							   <plugin id="org.apache.commons.codec" />
							   <plugin id="org.eclipse.sdk" />
							   <feature id="org.eclipse.sdk" />
							   <feature id="org.eclipse.wtp.capabilities.feature" />
							</excludes>
						</configuration>
					</execution>
				</executions>
			</plugin>						  			
		</plugins>				   		
	</build>

</project>