<?xml version="1.0" encoding="UTF-8" standalone="no"?><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>net.ssehub.easy</groupId>
  <artifactId>dependencies</artifactId>
  <version>1.3.11-SNAPSHOT</version>
  <packaging>pom</packaging>

  <name>EASyDependencies</name>
  <description>The basic dependencies of EASy-Producer.</description>
  <url>https://github.com/SSEHUB/EASyProducer</url>

  <licenses>
    <license>
      <name>Apache License, Version 2.0</name>
      <url>http://www.apache.org/licenses/LICENSE-2.0.txt</url>
      <distribution>repo</distribution>
    </license>
  </licenses>
  
  <developers>
    <developer>
      <id>eichelbe</id>
      <name>Holger Eichelberger</name>
      <email>eichelberger@sse.uni-hildesheim.de</email>
      <url>https://sse.uni-hildesheim.de/mitglieder/dr-holger-eichelberger/</url>
      <organization>SSE@SUH</organization>
      <organizationUrl>https://sse.uni-hildesheim.de/</organizationUrl>
      <roles>
        <role>architect</role>
        <role>developer</role>
      </roles>
      <timezone>Europe/Berlin</timezone>
    </developer>
    <developer>
      <id>elscha</id>
      <name>Sascha El-Sharkawy</name>
      <email>elscha@sse.uni-hildesheim.de</email>
      <url>https://sse.uni-hildesheim.de/mitglieder/sascha-el-sharkawy/</url>
      <organization>SSE@SUH</organization>
      <organizationUrl>https://sse.uni-hildesheim.de/</organizationUrl>
      <roles>
        <role>architect</role>
        <role>developer</role>
      </roles>
      <timezone>Europe/Berlin</timezone>
    </developer>
  </developers>
    
  <scm>
    <url>https://github.com/SSEHUB/EASyProducer.git</url>
  </scm>

  <properties>
    <project.build.sourceEncoding>Cp1252</project.build.sourceEncoding>
    <maven.compiler.source>17</maven.compiler.source>
    <maven.compiler.target>17</maven.compiler.target>
    <tycho.version>4.0.7</tycho.version>
    <easy.version>1.3.10-SNAPSHOT</easy.version>
  </properties>
  
  <!-- see https://github.com/vogellacompany/eclipse.platform/blob/update-sites/docs/Eclipse_Project_Update_Sites.md 
    and https://eclipse.dev/Xtext/documentation/350_continuous_integration.html -->
  <repositories>
    <repository>
      <id>eclipse</id>
      <layout>p2</layout>
      <url>https://download.eclipse.org/releases/2024-06/</url>
    </repository>
    <repository>
      <id>eclipse-upd</id>
      <layout>p2</layout>
      <url>https://download.eclipse.org/eclipse/updates/4.32/</url>
    </repository>
    <repository>
      <id>SSE-mvn</id> <!-- same ID as in easy-maven-settings.xml -->
      <name>SSE</name>
      <url>https://projects.sse.uni-hildesheim.de/qm/maven/</url>
      <layout>default</layout>
    </repository>
  </repositories>  

  <!-- Versions are basically determined by the underlying Eclipse version. Be as restrictive as you can 
       and validate the setup against QM and IIP-Ecosphere. Take dependencies as far as possible from Maven central.  -->
  <dependencyManagement>
    <dependencies>
        <dependency>
          <groupId>org.apache.ant</groupId>
          <artifactId>ant</artifactId>
          <version>[1.10.11]</version> <!-- eclipse is 1.10.10, due to security issues, 1.10.11 -->
        </dependency>
		<dependency>
		    <groupId>org.apache.ant</groupId>
		    <artifactId>ant-launcher</artifactId>
		    <version>[1.10.10]</version>
		</dependency>
		<dependency>
		  <groupId>org.apache.maven</groupId>
		  <artifactId>maven-core</artifactId>
		  <version>3.9.7</version>
		</dependency>
		<dependency>
		    <groupId>org.apache.velocity</groupId>
		    <artifactId>velocity</artifactId>
		    <version>1.7</version>
		</dependency>
		<dependency>
		    <groupId>org.aspectj</groupId>
		    <artifactId>aspectjtools</artifactId>
		    <version>1.9.22</version>
		</dependency>
		<dependency>
		    <groupId>org.aspectj</groupId>
		    <artifactId>aspectjrt</artifactId>
		    <version>1.9.22</version>
		</dependency>
        <dependency>
            <groupId>org.eclipse.jdt</groupId>
            <artifactId>org.eclipse.jdt.ui</artifactId>
            <version>[3.32.100]</version>
        </dependency>
        <dependency>
            <groupId>org.eclipse.platform</groupId>
            <artifactId>org.eclipse.ui.forms</artifactId>
            <version>[3.13.300]</version>
        </dependency>
        <dependency>
            <groupId>org.eclipse.platform</groupId>
            <artifactId>org.eclipse.ui.workbench</artifactId>
            <version>3.132.0</version>
        </dependency>    
        <dependency>
            <groupId>org.eclipse.platform</groupId>
            <artifactId>org.eclipse.ui.navigator.resources</artifactId>
            <version>3.9.300</version> <!-- 3.12.300 not in maven -->
        </dependency>      
        <dependency>
            <groupId>org.eclipse.platform</groupId>
            <artifactId>org.eclipse.ui.console</artifactId>
            <version>3.14.100</version>
        </dependency>  
        <dependency>
            <groupId>org.eclipse.platform</groupId>
            <artifactId>org.eclipse.jface</artifactId>
            <version>3.34.0</version>
        </dependency>                    
        <dependency>
            <groupId>org.osgi</groupId>
            <artifactId>org.osgi.service.component</artifactId>
            <version>[1.5.1]</version>
        </dependency>
        <dependency>
            <groupId>org.eclipse.platform</groupId>
            <artifactId>org.eclipse.osgi</artifactId>
            <version>[3.20.0]</version>
        </dependency>
		<dependency>
		    <groupId>org.eclipse.platform</groupId>
		    <artifactId>org.eclipse.core.resources</artifactId>
		    <version>[3.20.200]</version>
		</dependency>
        <dependency>
            <groupId>org.eclipse.platform</groupId>
            <artifactId>org.eclipse.equinox.preferences</artifactId>
            <version>[3.11.100]</version>
        </dependency>
        <dependency>
            <groupId>org.eclipse.platform</groupId>
            <artifactId>org.eclipse.equinox.launcher</artifactId>
            <version>1.6.800</version>
        </dependency>        
        <dependency>
            <groupId>org.eclipse.platform</groupId>
            <artifactId>org.eclipse.equinox.registry</artifactId>
            <version>[3.12.100]</version>
        </dependency>
		<dependency>
		    <groupId>commons-io</groupId>
		    <artifactId>commons-io</artifactId>
		    <version>[2.16.1]</version>
		</dependency>
		<dependency>
		    <groupId>commons-lang</groupId>
		    <artifactId>commons-lang</artifactId>
		    <version>[2.6]</version>
		</dependency>
        <dependency>
            <groupId>commons-codec</groupId>
            <artifactId>commons-codec</artifactId>
            <version>[1.16.0]</version>
        </dependency>
        <dependency>
            <groupId>commons-logging</groupId>
            <artifactId>commons-logging</artifactId>
            <version>[1.2]</version>
        </dependency>
	    <dependency>
	       <groupId>org.eclipse.emf</groupId>
	       <artifactId>org.eclipse.emf.ecore</artifactId>
	       <version>[2.36.0]</version>
	    </dependency>
        <dependency>
           <groupId>org.eclipse.emf</groupId>
           <artifactId>org.eclipse.emf.ecore.change</artifactId>
           <version>[2.16.0]</version>
        </dependency>
        <dependency>
           <groupId>org.eclipse.emf</groupId>
           <artifactId>org.eclipse.emf.ecore.xmi</artifactId>
           <version>[2.37.0]</version>
        </dependency>
	    <dependency>
	       <groupId>org.eclipse.xtext</groupId>
	       <artifactId>org.eclipse.xtext</artifactId>
	       <version>[2.35.0]</version>
	    </dependency>
        <dependency>
           <groupId>org.eclipse.xtext</groupId>
           <artifactId>org.eclipse.xtext.ui</artifactId> <!-- self-deployed, not available -->
           <version>[2.35.0]</version>
        </dependency>
        <dependency>
           <groupId>org.eclipse.xtext</groupId>
           <artifactId>org.eclipse.xtext.ui.shared</artifactId> <!-- self-deployed, not available -->
           <version>[2.35.0]</version>
        </dependency>
        <dependency>
           <groupId>org.eclipse.xtext</groupId>
           <artifactId>org.eclipse.xtext.builder</artifactId>
           <version>[2.35.0]</version>
        </dependency>
	    <dependency>
           <groupId>org.apache.log4j</groupId>
           <artifactId>log4j</artifactId>
	       <version>[1.2.25]</version> <!-- eclipse has 1.2.25, also outdated -->
           <exclusions>
            <exclusion>
             <groupId>javax.jms</groupId>
             <artifactId>jms</artifactId>
            </exclusion>
            <exclusion>
             <groupId>com.sun.jmx</groupId>
             <artifactId>jmxri</artifactId>
            </exclusion>
            <exclusion>
             <groupId>com.sun.jdmk</groupId>
             <artifactId>jmxtools</artifactId>
            </exclusion>
           </exclusions>
	    </dependency> 
	    <dependency>
           <groupId>org.eclipse.platform</groupId>
           <artifactId>org.eclipse.ui</artifactId>
           <version>3.206.0</version>
        </dependency>
	    <dependency>
	       <groupId>org.eclipse.xtext</groupId>
	       <artifactId>org.eclipse.xtext.ui.codetemplates.ui</artifactId>
	       <version>2.10.0</version> <!-- 2.35.0 was never deployed -->
	    </dependency>
	    <dependency>
            <groupId>org.eclipse.platform</groupId>
            <artifactId>org.eclipse.ui.ide</artifactId>
            <version>3.22.200</version>
    	</dependency>
		<dependency>
            <groupId>org.eclipse.platform</groupId>
            <artifactId>org.eclipse.core.runtime</artifactId>
            <version>[3.31.100]</version>
    	</dependency>
        <dependency>
            <groupId>org.eclipse.platform</groupId>
            <artifactId>org.eclipse.core.jobs</artifactId>
            <version>[3.15.300]</version>
        </dependency>
        <dependency>
            <groupId>org.eclipse.platform</groupId>
            <artifactId>org.eclipse.core.contenttype</artifactId>
            <version>[3.9.400]</version>
        </dependency>
        <dependency>
            <groupId>org.eclipse.platform</groupId>
            <artifactId>org.eclipse.core.expressions</artifactId>
            <version>[3.9.400]</version>
        </dependency>
        <dependency>
            <groupId>org.eclipse.platform</groupId>
            <artifactId>org.eclipse.core.commands</artifactId>
            <version>[3.12.100]</version>
        </dependency>
        <dependency>
            <groupId>org.eclipse.platform</groupId>
            <artifactId>org.eclipse.equinox.app</artifactId>
            <version>[1.7.100]</version>
        </dependency>
        <dependency>
		    <groupId>org.eclipse.platform</groupId>
		    <artifactId>org.eclipse.equinox.common</artifactId>
		    <version>[3.19.100]</version>
		</dependency>      	
		<dependency>
		    <groupId>org.eclipse.jdt</groupId>
		    <artifactId>org.eclipse.jdt.core</artifactId>
		    <version>[3.38.0]</version>
		</dependency>
		<dependency>
           <groupId>org.eclipse.platform</groupId>
           <artifactId>org.eclipse.text</artifactId>
           <version>[3.14.100]</version>
        </dependency>
		<dependency>
            <groupId>org.eclipse.platform</groupId>
            <artifactId>org.eclipse.core.filesystem</artifactId>
            <version>[1.10.400]</version>
    	</dependency>
		<dependency>
		    <groupId>org.eclipse.xtext</groupId>
		    <artifactId>org.eclipse.xtext.xtext.generator</artifactId>
		    <version>2.35.0</version>
		    <scope>runtime</scope>
		</dependency>
		<dependency>
		    <groupId>org.eclipse.emf</groupId>
		    <artifactId>org.eclipse.emf.codegen.ecore</artifactId>
		    <version>2.38.0</version>
		</dependency>
		<dependency>
		    <groupId>org.eclipse.emf</groupId>
		    <artifactId>org.eclipse.emf.mwe.utils</artifactId>
		    <version>1.12.0</version>
		</dependency>
		<dependency>
		    <groupId>org.antlr</groupId>
		    <artifactId>antlr-runtime</artifactId>
		    <version>[3.2]</version>
		</dependency>
        <dependency>
            <groupId>org.eclipse.ide</groupId>
            <artifactId>org.antlr.runtime</artifactId>
            <version>[3.1,3.3]</version>
        </dependency>
		<dependency>
            <groupId>org.apache.felix</groupId>
            <artifactId>org.apache.felix.scr</artifactId>
            <version>[2.2.10]</version>
    		</dependency>
		<dependency>
		    <groupId>org.eclipse.xtext</groupId>
		    <artifactId>org.eclipse.xtext.common.types</artifactId>
		    <version>[2.35.0]</version>
		</dependency>
		<dependency>
		    <groupId>com.google.guava</groupId>
		    <artifactId>guava</artifactId>
		    <version>[33.2.0-jre]</version>
		</dependency>
		<dependency>
		    <groupId>org.eclipse.xtext</groupId>
		    <artifactId>org.eclipse.xtext.xbase.lib</artifactId>
		    <version>[2.35.0]</version>
		</dependency>
		<dependency>
		    <groupId>org.ow2.asm</groupId>
		    <artifactId>asm</artifactId>
		    <version>[9.6]</version>
		</dependency>
		<dependency>
		    <groupId>org.eclipse.xtext</groupId>
		    <artifactId>org.eclipse.xtext.xbase</artifactId>
		    <version>[2.35.0]</version>
		</dependency>
		<dependency>
		    <groupId>org.eclipse.xtext</groupId>
		    <artifactId>org.eclipse.xtext.util</artifactId>
		    <version>[2.35.0]</version>
		</dependency>
		<dependency>
		    <groupId>org.eclipse.emf</groupId>
		    <artifactId>org.eclipse.emf.common</artifactId>
		    <version>[2.30.0]</version>
		</dependency>
        <dependency>
            <groupId>org.eclipse.jface</groupId>
            <artifactId>text</artifactId>
            <version>3.25.100</version>
        </dependency>
        <dependency>
            <groupId>org.eclipse.jface</groupId>
            <artifactId>org.eclipse.jface</artifactId>
            <version>3.34.0</version>
        </dependency>
        <dependency>
            <groupId>javax</groupId>
            <artifactId>servlet</artifactId>
            <version>3.1.0</version>
        </dependency>         
        <dependency>
            <groupId>org.bouncycastle</groupId> <!-- self-deployed, else fails with director -->
            <artifactId>bcprov</artifactId>
            <version>1.78.1</version>
        </dependency>
        <dependency>
            <groupId>org.w3c.css</groupId>
            <artifactId>sac</artifactId>
            <version>1.3.1</version>
        </dependency>
        <dependency>
            <groupId>org.eclipse.platform</groupId>
            <artifactId>org.eclipse.equinox.http.registry</artifactId>
            <version>1.4.100</version>
        </dependency>
        <dependency>
            <groupId>org.eclipse.platform</groupId>
            <artifactId>org.eclipse.help.webapp</artifactId>
            <version>3.11.400</version>
        </dependency>
        
        <!-- required for pre-packaged PDE via imports -->
        <dependency>
            <groupId>org.osgi</groupId>
            <artifactId>org.osgi.service.cm</artifactId>
            <version>[1.6.1]</version>
        </dependency>
        <dependency>
            <groupId>org.osgi</groupId>
            <artifactId>org.osgi.service.metatype</artifactId>
            <version>[1.4.1]</version>
        </dependency>
        
    </dependencies>
  </dependencyManagement>

  <build>
    <plugins>

      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-compiler-plugin</artifactId>
        <version>3.13.0</version>
        <configuration>
          <source>${maven.compiler.source}</source>
          <target>${maven.compiler.target}</target>
        </configuration>
      </plugin>

       <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-javadoc-plugin</artifactId>
        <version>3.6.3</version>
        <configuration>
          <show>private</show>
          <encoding>${project.build.sourceEncoding}</encoding>
          <failOnError>false</failOnError>
          <detectJavaApiLink>false</detectJavaApiLink> 
          <detectOfflineLinks>false</detectOfflineLinks>
          <doclint>all,-missing</doclint>
          <additionalOptions>--allow-script-in-comments</additionalOptions> <!-- occurs in some parts, no details where -->
          <legacyMode>true</legacyMode> <!-- some dependencies do not have module infos -->
        </configuration>
        <executions>
          <execution>
            <id>default-cli</id>
            <goals>
              <goal>javadoc</goal>
              <goal>test-javadoc</goal>
              <goal>jar</goal>
              <goal>test-jar</goal>
            </goals>
          </execution>
        </executions>
      </plugin>
      
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-source-plugin</artifactId>
        <version>3.2.0</version>
        <executions>
          <execution>
            <id>attach-sources</id>
            <phase>package</phase>
            <goals>
              <goal>jar-no-fork</goal>
              <goal>test-jar</goal>
            </goals>
          </execution>
        </executions>
      </plugin>      

      <plugin>
        <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>    
          <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>
            <environment>
              <os>macosx</os>
              <ws>cocoa</ws>
              <arch>x86_64</arch>
            </environment>
          </environments>
        </configuration>
      </plugin>
      
      <plugin>
        <groupId>org.eclipse.tycho</groupId>
        <artifactId>tycho-surefire-plugin</artifactId>
        <version>${tycho.version}</version>
        <executions>
          <!--<execution>
            <id>plugin-test</id>     
            <phase>test</phase>
            <goals><goal>plugin-test</goal></goals>
            <configuration>
              <test>**/AllTests*.java</test>
              <forkedProcessTimeoutInSeconds>3600</forkedProcessTimeoutInSeconds>
              <argLine>-Xmx1024m</argLine> 
              <argLine>-Dosgi.arch=x86</argLine> 
              <useUIHarness>false</useUIHarness>
              <useUIThread>false</useUIThread>
            </configuration>
          </execution>-->
          <execution>
            <id>default-test</id> <!-- phase: integration-test, else it runs twice -->
            <goals><goal>test</goal></goals>
            <configuration>
              <includes><include>**/AllTests*.class</include></includes>
              <!--<test>**/AllTests*.java</test>-->
              <forkedProcessTimeoutInSeconds>400000</forkedProcessTimeoutInSeconds> <!-- scenario tests! -->
              <argLine>-Xmx1024m</argLine> 
              <argLine>-Dosgi.arch=x86</argLine> 
              <useUIHarness>false</useUIHarness>
              <useUIThread>false</useUIThread>
              <redirectTestOutputToFile>true</redirectTestOutputToFile>
            </configuration>
          </execution>        
        </executions>
        <dependencies>
          <!-- Force using the latest JUnit 47 provider, consider also in lib dependencies; seems also to work with
               jUnit 4.12, but not with 4.13 ;)  -->
          <dependency>
            <groupId>org.apache.maven.surefire</groupId>
            <artifactId>surefire-junit47</artifactId>
            <version>3.0.0-M3</version>
          </dependency>
        </dependencies>
      </plugin>
      
      <plugin>
        <groupId>org.jacoco</groupId>
        <artifactId>jacoco-maven-plugin</artifactId>
        <version>0.8.8</version>
        <executions>
            <execution>
                <phase>pre-integration-test</phase>
                <goals>
                    <goal>prepare-agent</goal>
                </goals>
            </execution>
            <execution>
                <id>report</id>
                <phase>post-integration-test</phase>
                <goals>
                    <goal>report</goal>
                </goals>
            </execution>
        </executions>
      </plugin>
      
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-deploy-plugin</artifactId>
        <version>3.1.1</version>
      </plugin>
      
    </plugins>

    <extensions>
      <!-- Enabling the use of SSH -->
      <extension>
        <groupId>org.apache.maven.wagon</groupId>
         <artifactId>wagon-ssh-external</artifactId>
         <version>1.0-beta-6</version>
      </extension>
      
      <!-- <extension> fails, detects cyclic dependencies that are not there
        <groupId>org.apache.maven.extensions</groupId>
        <artifactId>maven-build-cache-extension</artifactId>
        <version>1.2.0</version>
      </extension> -->         
    </extensions>
    
  </build>

  <distributionManagement>
    <repository>
      <id>sse-projects</id>
      <url>scpexe://projects.sse.uni-hildesheim.de/var/www/qm/maven/</url>
    </repository>
    <snapshotRepository>
      <id>sse-projects</id>
      <url>scpexe://projects.sse.uni-hildesheim.de/var/www/qm/maven/</url>
    </snapshotRepository>
  </distributionManagement>
  
  <!-- settings.xml
  <servers>
    <server>
      <id>sse-projects</id>
      <username>jenkins</username>
    </server>
  </servers>  
  -->

</project>