Merge "506898: [Feature] Add source code annotations if traceability link to source file is created" into develop
diff --git a/org.eclipse.capra.handler.cdt.tests/pom.xml b/org.eclipse.capra.handler.cdt.tests/pom.xml
index 8a79f32..00a61e5 100644
--- a/org.eclipse.capra.handler.cdt.tests/pom.xml
+++ b/org.eclipse.capra.handler.cdt.tests/pom.xml
@@ -21,7 +21,7 @@
<artifactId>parent</artifactId>
<version>0.7.0-SNAPSHOT</version>
</parent>
-
+
<artifactId>org.eclipse.capra.handler.cdt.tests</artifactId>
<packaging>eclipse-test-plugin</packaging>
diff --git a/org.eclipse.capra.handler.jdt.tests/pom.xml b/org.eclipse.capra.handler.jdt.tests/pom.xml
index 2a11fd0..405407b 100644
--- a/org.eclipse.capra.handler.jdt.tests/pom.xml
+++ b/org.eclipse.capra.handler.jdt.tests/pom.xml
@@ -21,7 +21,7 @@
<artifactId>parent</artifactId>
<version>0.7.0-SNAPSHOT</version>
</parent>
-
+
<artifactId>org.eclipse.capra.handler.jdt.tests</artifactId>
<packaging>eclipse-test-plugin</packaging>
diff --git a/org.eclipse.capra.handler.jdt.tests/src/org/eclipse/capra/handler/jdt/TestUtil.java b/org.eclipse.capra.handler.jdt.tests/src/org/eclipse/capra/handler/jdt/TestUtil.java
index 89b65da..5e3eca7 100644
--- a/org.eclipse.capra.handler.jdt.tests/src/org/eclipse/capra/handler/jdt/TestUtil.java
+++ b/org.eclipse.capra.handler.jdt.tests/src/org/eclipse/capra/handler/jdt/TestUtil.java
@@ -10,8 +10,10 @@
*******************************************************************************/
package org.eclipse.capra.handler.jdt;
+import java.io.File;
import java.util.ArrayList;
import java.util.List;
+import java.util.UUID;
import org.eclipse.capra.core.adapters.ArtifactMetaModelAdapter;
import org.eclipse.capra.core.adapters.TracePersistenceAdapter;
@@ -22,6 +24,7 @@
import org.eclipse.core.resources.IWorkspaceRoot;
import org.eclipse.core.resources.ResourcesPlugin;
import org.eclipse.core.runtime.CoreException;
+import org.eclipse.core.runtime.NullProgressMonitor;
import org.eclipse.emf.ecore.EObject;
import org.eclipse.emf.ecore.resource.ResourceSet;
import org.eclipse.emf.ecore.resource.impl.ResourceSetImpl;
@@ -32,9 +35,12 @@
import org.eclipse.jdt.core.IPackageFragmentRoot;
import org.eclipse.jdt.core.JavaCore;
import org.eclipse.jdt.core.JavaModelException;
+import org.eclipse.jdt.internal.launching.StandardVMType;
import org.eclipse.jdt.launching.IVMInstall;
+import org.eclipse.jdt.launching.IVMInstallType;
import org.eclipse.jdt.launching.JavaRuntime;
import org.eclipse.jdt.launching.LibraryLocation;
+import org.eclipse.jdt.launching.VMStandin;
import org.junit.Before;
public class TestUtil {
@@ -60,14 +66,27 @@
IFolder binFolder = project.getFolder("bin");
javaProject.setOutputLocation(binFolder.getFullPath(), null);
- // Set classpath
+ // Manually set Java Runtime Environment to make sure it is not null
+ // even for Mac OS where the default is not set
+ @SuppressWarnings("restriction")
+ final IVMInstallType vmInstallType = JavaRuntime.getVMInstallType(StandardVMType.ID_STANDARD_VM_TYPE);
+ String id = UUID.randomUUID().toString();
+ VMStandin newVm = new VMStandin(vmInstallType, id);
+ newVm.setName("Default-VM");
+ String javaHome = System.getProperty("java.home");
+ File installLocation = new File(javaHome);
+ newVm.setInstallLocation(installLocation);
+ IVMInstall realVm = newVm.convertToRealVM();
+ JavaRuntime.setDefaultVMInstall(realVm, new NullProgressMonitor());
+
List<IClasspathEntry> entries = new ArrayList<IClasspathEntry>();
+ // add libs to project class path
IVMInstall vmInstall = JavaRuntime.getDefaultVMInstall();
LibraryLocation[] locations = JavaRuntime.getLibraryLocations(vmInstall);
for (LibraryLocation element : locations) {
entries.add(JavaCore.newLibraryEntry(element.getSystemLibraryPath(), null, null));
}
- // add libs to project class path
+ // Set classpath
javaProject.setRawClasspath(entries.toArray(new IClasspathEntry[entries.size()]), null);
// Create source folder
diff --git a/org.eclipse.capra.testsuite/pom.xml b/org.eclipse.capra.testsuite/pom.xml
index 0c80162..d6bc3f5 100644
--- a/org.eclipse.capra.testsuite/pom.xml
+++ b/org.eclipse.capra.testsuite/pom.xml
@@ -17,47 +17,7 @@
<artifactId>parent</artifactId>
<version>0.7.0-SNAPSHOT</version>
</parent>
-
- <properties>
- <os-jvm-flags /> <!-- for the default case -->
- </properties>
-
- <build>
- <plugins>
- <plugin>
- <groupId>org.eclipse.tycho</groupId>
- <artifactId>tycho-surefire-plugin</artifactId>
- <version>${tycho-version}</version>
- <configuration>
- <useUIHarness>true</useUIHarness>
- <useUIThread>true</useUIThread>
- <argLine>${os-jvm-flags}</argLine>
- <dependencies>
- <dependency>
- <type>eclipse-plugin</type>
- <artifactId>org.eclipse.equinox.event</artifactId>
- <version>0.0.0</version>
- </dependency>
- </dependencies>
- </configuration>
- </plugin>
- </plugins>
- </build>
-
- <profiles>
- <profile>
- <id>macosx-jvm-flags</id>
- <activation>
- <os>
- <family>mac</family>
- </os>
- </activation>
- <properties>
- <os-jvm-flags>-XstartOnFirstThread</os-jvm-flags>
- </properties>
- </profile>
- </profiles>
-
+
<artifactId>org.eclipse.capra.testsuite</artifactId>
<packaging>eclipse-test-plugin</packaging>
diff --git a/pom.xml b/pom.xml
index 6f25a2e..1f74cb8 100644
--- a/pom.xml
+++ b/pom.xml
@@ -1,128 +1,147 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
- Copyright (c) 2016 Chalmers | University of Gothenburg, rt-labs and others.
- All rights reserved. This program and the accompanying materials
- are made available under the terms of the Eclipse Public License v1.0
- which accompanies this distribution, and is available at
- http://www.eclipse.org/legal/epl-v10.html
+ Copyright (c) 2016 Chalmers | University of Gothenburg, rt-labs and others.
+ All rights reserved. This program and the accompanying materials
+ are made available under the terms of the Eclipse Public License v1.0
+ which accompanies this distribution, and is available at
+ http://www.eclipse.org/legal/epl-v10.html
- Contributors:
- Chalmers | University of Gothenburg and rt-labs - initial API and implementation and/or initial documentation
- -->
+ Contributors:
+ Chalmers | University of Gothenburg and rt-labs - initial API and implementation and/or initial documentation
+-->
<project
- xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"
- xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
- <modelVersion>4.0.0</modelVersion>
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"
+ xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
+ <modelVersion>4.0.0</modelVersion>
- <groupId>org.eclipse.capra</groupId>
- <artifactId>parent</artifactId>
- <version>0.7.0-SNAPSHOT</version>
- <packaging>pom</packaging>
+ <groupId>org.eclipse.capra</groupId>
+ <artifactId>parent</artifactId>
+ <version>0.7.0-SNAPSHOT</version>
+ <packaging>pom</packaging>
- <modules>
- <module>org.eclipse.capra.core</module>
- <module>org.eclipse.capra.documentation</module>
- <module>org.eclipse.capra.feature</module>
- <module>org.eclipse.capra.generic.persistence</module>
- <module>org.eclipse.capra.generic.priority</module>
- <module>org.eclipse.capra.generic.tracemodels</module>
- <module>org.eclipse.capra.handler.cdt</module>
- <module>org.eclipse.capra.handler.cdt.tests</module>
- <module>org.eclipse.capra.handler.emf</module>
- <module>org.eclipse.capra.handler.file</module>
- <module>org.eclipse.capra.handler.gef</module>
- <module>org.eclipse.capra.handler.hudson</module>
- <module>org.eclipse.capra.handler.jdt</module>
- <module>org.eclipse.capra.handler.jdt.tests</module>
- <module>org.eclipse.capra.handler.mylyn</module>
- <module>org.eclipse.capra.handler.papyrus</module>
- <module>org.eclipse.capra.handler.reqIf</module>
- <module>org.eclipse.capra.testsuite</module>
- <module>org.eclipse.capra.ui</module>
- <module>org.eclipse.capra.ui.notification</module>
- <module>org.eclipse.capra.ui.plantuml</module>
- <module>org.eclipse.capra.releng.target</module>
- <module>org.eclipse.capra.releng.p2</module>
- </modules>
+ <modules>
+ <module>org.eclipse.capra.core</module>
+ <module>org.eclipse.capra.documentation</module>
+ <module>org.eclipse.capra.feature</module>
+ <module>org.eclipse.capra.generic.persistence</module>
+ <module>org.eclipse.capra.generic.priority</module>
+ <module>org.eclipse.capra.generic.tracemodels</module>
+ <module>org.eclipse.capra.handler.cdt</module>
+ <module>org.eclipse.capra.handler.cdt.tests</module>
+ <module>org.eclipse.capra.handler.emf</module>
+ <module>org.eclipse.capra.handler.file</module>
+ <module>org.eclipse.capra.handler.gef</module>
+ <module>org.eclipse.capra.handler.hudson</module>
+ <module>org.eclipse.capra.handler.jdt</module>
+ <module>org.eclipse.capra.handler.jdt.tests</module>
+ <module>org.eclipse.capra.handler.mylyn</module>
+ <module>org.eclipse.capra.handler.papyrus</module>
+ <module>org.eclipse.capra.handler.reqIf</module>
+ <module>org.eclipse.capra.testsuite</module>
+ <module>org.eclipse.capra.ui</module>
+ <module>org.eclipse.capra.ui.notification</module>
+ <module>org.eclipse.capra.ui.plantuml</module>
+ <module>org.eclipse.capra.releng.target</module>
+ <module>org.eclipse.capra.releng.p2</module>
+ </modules>
- <properties>
- <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
- <tycho-version>0.24.0</tycho-version>
- </properties>
+ <properties>
+ <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
+ <tycho-version>0.24.0</tycho-version>
+ </properties>
- <profiles>
- </profiles>
+ <profiles>
+ <profile>
+ <id>macosx-jvm-flags</id>
+ <activation>
+ <os>
+ <family>mac</family>
+ </os>
+ </activation>
+ <properties>
+ <os-jvm-flags>-XstartOnFirstThread</os-jvm-flags>
+ </properties>
+ </profile>
+ </profiles>
- <repositories>
- <repository>
- <id>license-feature</id>
- <url>http://download.eclipse.org/cbi/updates/license/</url>
- <layout>p2</layout>
- </repository>
- </repositories>
+ <repositories>
+ <repository>
+ <id>license-feature</id>
+ <url>http://download.eclipse.org/cbi/updates/license/</url>
+ <layout>p2</layout>
+ </repository>
+ </repositories>
- <build>
- <plugins>
- <plugin>
- <groupId>org.eclipse.tycho</groupId>
- <artifactId>tycho-maven-plugin</artifactId>
- <version>${tycho-version}</version>
- <extensions>true</extensions>
- </plugin>
+ <build>
+ <plugins>
+ <plugin>
+ <groupId>org.eclipse.tycho</groupId>
+ <artifactId>tycho-maven-plugin</artifactId>
+ <version>${tycho-version}</version>
+ <extensions>true</extensions>
+ </plugin>
- <!-- Only required if tests need UI -->
- <plugin>
- <groupId>org.eclipse.tycho</groupId>
- <artifactId>tycho-surefire-plugin</artifactId>
- <version>${tycho-version}</version>
- <configuration>
- <useUIHarness>true</useUIHarness>
- </configuration>
- </plugin>
+ <!-- Only required if tests need UI -->
+ <plugin>
+ <groupId>org.eclipse.tycho</groupId>
+ <artifactId>tycho-surefire-plugin</artifactId>
+ <version>${tycho-version}</version>
+ <configuration>
+ <useUIHarness>true</useUIHarness>
+ <useUIThread>true</useUIThread>
+ <argLine>${os-jvm-flags}</argLine>
+ <dependencies>
+ <dependency>
+ <type>eclipse-plugin</type>
+ <artifactId>org.eclipse.equinox.event</artifactId>
+ <version>0.0.0</version>
+ </dependency>
+ </dependencies>
+ </configuration>
+ </plugin>
- <plugin>
- <groupId>org.eclipse.tycho</groupId>
- <artifactId>target-platform-configuration</artifactId>
- <version>${tycho-version}</version>
- <configuration>
- <target>
- <artifact>
- <groupId>org.eclipse.capra</groupId>
- <artifactId>org.eclipse.capra.releng.target</artifactId>
- <version>0.7.0-SNAPSHOT</version>
- </artifact>
- </target>
- <environments>
- <environment>
- <os>win32</os>
- <ws>win32</ws>
- <arch>x86</arch>
- </environment>
- <environment>
- <os>win32</os>
- <ws>win32</ws>
- <arch>x86_64</arch>
- </environment>
- <environment>
- <os>linux</os>
- <ws>gtk</ws>
- <arch>x86</arch>
- </environment>
- <environment>
- <os>linux</os>
- <ws>gtk</ws>
- <arch>x86_64</arch>
- </environment>
- <environment>
- <os>macosx</os>
- <ws>cocoa</ws>
- <arch>x86_64</arch>
- </environment>
- </environments>
- </configuration>
- </plugin>
-
- </plugins>
- </build>
+ <plugin>
+ <groupId>org.eclipse.tycho</groupId>
+ <artifactId>target-platform-configuration</artifactId>
+ <version>${tycho-version}</version>
+ <configuration>
+ <target>
+ <artifact>
+ <groupId>org.eclipse.capra</groupId>
+ <artifactId>org.eclipse.capra.releng.target</artifactId>
+ <version>0.7.0-SNAPSHOT</version>
+ </artifact>
+ </target>
+ <environments>
+ <environment>
+ <os>win32</os>
+ <ws>win32</ws>
+ <arch>x86</arch>
+ </environment>
+ <environment>
+ <os>win32</os>
+ <ws>win32</ws>
+ <arch>x86_64</arch>
+ </environment>
+ <environment>
+ <os>linux</os>
+ <ws>gtk</ws>
+ <arch>x86</arch>
+ </environment>
+ <environment>
+ <os>linux</os>
+ <ws>gtk</ws>
+ <arch>x86_64</arch>
+ </environment>
+ <environment>
+ <os>macosx</os>
+ <ws>cocoa</ws>
+ <arch>x86_64</arch>
+ </environment>
+ </environments>
+ </configuration>
+ </plugin>
+ </plugins>
+ </build>
</project>