From b4ddebcbae215bd62e844bd912bdcd03fa3201bc Mon Sep 17 00:00:00 2001
From: Kai Brassel <mail@khbrassel.de>
Date: Tue, 17 Nov 2020 10:41:39 +0100
Subject: [PATCH 1/2] Unified Bundle-Version to 1.0.0.qualifier in sync with
 new pom file(s)

---
 de.hftstuttgart.buildingphysics/META-INF/MANIFEST.MF | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/de.hftstuttgart.buildingphysics/META-INF/MANIFEST.MF b/de.hftstuttgart.buildingphysics/META-INF/MANIFEST.MF
index ca9e9fa..648a71f 100644
--- a/de.hftstuttgart.buildingphysics/META-INF/MANIFEST.MF
+++ b/de.hftstuttgart.buildingphysics/META-INF/MANIFEST.MF
@@ -3,7 +3,7 @@ Bundle-ManifestVersion: 2
 Bundle-Name: %pluginName
 Bundle-SymbolicName: de.hftstuttgart.buildingphysics;singleton:=true
 Automatic-Module-Name: de.hftstuttgart.buildingphysics
-Bundle-Version: 0.1.0.qualifier
+Bundle-Version: 1.0.0.qualifier
 Bundle-ClassPath: .
 Bundle-Vendor: %providerName
 Bundle-Localization: plugin
-- 
GitLab


From cde6b190b5141a7e601a5d036ccfd2fd67611ef4 Mon Sep 17 00:00:00 2001
From: Kai Brassel <mail@khbrassel.de>
Date: Tue, 17 Nov 2020 10:58:48 +0100
Subject: [PATCH 2/2] Enable Maven build with m2e and tycho configurators
 installed in Eclipse

* Add Maven parent with tycho and P2 repo(s) for target definition
* Add Maven nature to all projects
* Add POM files with packaging eclipse-plugin , -feature, -repository
* Dedicated project for product definition
* Add configuration with default start levels to product definition
---
 README.md                                     | 17 ++--
 .../.classpath                                |  2 +-
 .../.project                                  |  6 ++
 ...ttgart.buildingphysics.application.product | 50 ------------
 .../plugin.xml                                |  4 +-
 .../pom.xml                                   | 14 ++++
 .../.classpath                                |  6 +-
 de.hftstuttgart.buildingphysics.edit/.project |  6 ++
 de.hftstuttgart.buildingphysics.edit/pom.xml  | 16 ++++
 .../.project                                  |  6 ++
 .../feature.xml                               | 74 +++++-------------
 .../pom.xml                                   | 16 ++++
 .../.project                                  | 17 ++++
 .../pom.xml                                   | 72 +++++++++++++++++
 .../.project                                  | 17 ++++
 ...ttgart.buildingphysics.application.product | 60 ++++++++++++++
 .../pom.xml                                   | 46 +++++++++++
 .../.classpath                                |  6 ++
 .../.project                                  | 78 ++++++++-----------
 .../pom.xml                                   | 16 ++++
 de.hftstuttgart.buildingphysics/.classpath    |  7 +-
 de.hftstuttgart.buildingphysics/.project      |  6 ++
 de.hftstuttgart.buildingphysics/pom.xml       | 16 ++++
 23 files changed, 393 insertions(+), 165 deletions(-)
 delete mode 100644 de.hftstuttgart.buildingphysics.application/de.hftstuttgart.buildingphysics.application.product
 create mode 100644 de.hftstuttgart.buildingphysics.application/pom.xml
 create mode 100644 de.hftstuttgart.buildingphysics.edit/pom.xml
 create mode 100644 de.hftstuttgart.buildingphysics.feature/pom.xml
 create mode 100644 de.hftstuttgart.buildingphysics.parent/.project
 create mode 100644 de.hftstuttgart.buildingphysics.parent/pom.xml
 create mode 100644 de.hftstuttgart.buildingphysics.product/.project
 create mode 100644 de.hftstuttgart.buildingphysics.product/de.hftstuttgart.buildingphysics.application.product
 create mode 100644 de.hftstuttgart.buildingphysics.product/pom.xml
 create mode 100644 de.hftstuttgart.buildingphysics.viewmodel/.classpath
 create mode 100644 de.hftstuttgart.buildingphysics.viewmodel/pom.xml
 create mode 100644 de.hftstuttgart.buildingphysics/pom.xml

diff --git a/README.md b/README.md
index 6d3e13c..5daae37 100644
--- a/README.md
+++ b/README.md
@@ -6,11 +6,18 @@
 
 1. Ensure Java 11 or higher is available (if not, install AdoptOpenJDK 15)
 2. Install Eclipse Modeling Tools, version 2020-09 or higher
-3. Import all Eclipse projects in this GIT repository via `File -> Import... -> Projects from GIT -> Clone URI`
-4. Refresh and clean/build projects
-5. Open `de.hftstuttgart.buildingphysics.application.product` and in `Overview`, section `Testing` press `Synchronize` first and `Launch an Eclipse Application` second
-6. Press `New...` to ceate a new empty Building Physics Catalog; Save and Load buttons are also available.
- 
+3. Install m2e and tycho configurators to enable Maven
+ * Add Maven support via `Help -> Install New Software...` from update site `http://download.eclipse.org/technology/m2e/releases`, check `Maven Integration for Eclipse` (m2e) and accept all defaults
+ * Go to `Eclipse Preferences... -> Maven -> Discovery` and press `Open Catalog`, Find: `tycho` and check `Tycho Configurator`, Press `Finish`.
+4. Import all Eclipse projects in this GIT repository via `File -> Import... -> Projects from GIT -> Clone URI`
+5. Refresh and clean/build projects
+6. Select file `de.hftstuttgart.buildingphysics.application.product` and execute `Open With -> Product Configuration Editor`, in `Overview`, section `Testing`, press `Synchronize` first and `Launch an Eclipse Application` second. Validation will fail, but nevertheless, proceed to generate a Runtime Configuration, albeit incomplete for now.
+7. Open `Run -> Run Configuration...`, select newly created run configuration and execute `Add Required Plug-ins` under tab `Plug-ins`, `Apply` and `Run`
+7. Run/Debug from Eclipse IDE: Press `New...` to ceate a new empty Building Physics Catalog; Save and Load buttons are also available.
+8. Build deliverables with Maven: Select project `de.hftstuttgart.buildingphysics.parent` and execute `Run As -> Maven install`
+
+
 ## How to Create
 
 Find background information about parameter catalogs for simulation and a tutorial on how to create them at [https://transfer.hft-stuttgart.de/gitlab/neqmodplus/parameter-catalogs-for-simulation](https://transfer.hft-stuttgart.de/gitlab/neqmodplus/parameter-catalogs-for-simulation).
+
diff --git a/de.hftstuttgart.buildingphysics.application/.classpath b/de.hftstuttgart.buildingphysics.application/.classpath
index 1fa3e68..eabb7bc 100644
--- a/de.hftstuttgart.buildingphysics.application/.classpath
+++ b/de.hftstuttgart.buildingphysics.application/.classpath
@@ -3,5 +3,5 @@
 	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
 	<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
 	<classpathentry kind="src" path="src"/>
-	<classpathentry kind="output" path="bin"/>
+	<classpathentry kind="output" path="target/classes"/>
 </classpath>
diff --git a/de.hftstuttgart.buildingphysics.application/.project b/de.hftstuttgart.buildingphysics.application/.project
index b37826e..66aee56 100644
--- a/de.hftstuttgart.buildingphysics.application/.project
+++ b/de.hftstuttgart.buildingphysics.application/.project
@@ -20,8 +20,14 @@
 			<arguments>
 			</arguments>
 		</buildCommand>
+		<buildCommand>
+			<name>org.eclipse.m2e.core.maven2Builder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
 	</buildSpec>
 	<natures>
+		<nature>org.eclipse.m2e.core.maven2Nature</nature>
 		<nature>org.eclipse.pde.PluginNature</nature>
 		<nature>org.eclipse.jdt.core.javanature</nature>
 	</natures>
diff --git a/de.hftstuttgart.buildingphysics.application/de.hftstuttgart.buildingphysics.application.product b/de.hftstuttgart.buildingphysics.application/de.hftstuttgart.buildingphysics.application.product
deleted file mode 100644
index bf6b6aa..0000000
--- a/de.hftstuttgart.buildingphysics.application/de.hftstuttgart.buildingphysics.application.product
+++ /dev/null
@@ -1,50 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?pde version="3.5"?>
-
-<product name="de.hftstuttgart.buildingphysics.application" uid="de.hftstuttgart.buildingphysics.application.product" id="de.hftstuttgart.buildingphysics.application.product" application="org.eclipse.e4.ui.workbench.swt.E4Application" version="1.0.0.qualifier" useFeatures="true" includeLaunchers="true">
-
-   <configIni use="default">
-   </configIni>
-
-   <launcherArgs>
-      <programArgs>-clearPersistedState
-      </programArgs>
-      <vmArgsMac>-XstartOnFirstThread -Dorg.eclipse.swt.internal.carbon.smallFonts
-      </vmArgsMac>
-   </launcherArgs>
-
-   <windowImages/>
-
-   <launcher>
-      <win useIco="false">
-         <bmp/>
-      </win>
-   </launcher>
-
-   <vm>
-      <macos include="false">org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-14</macos>
-   </vm>
-
-   <plugins>
-   </plugins>
-
-   <features>
-      <feature id="de.hftstuttgart.buildingphysics.feature"/>
-      <feature id="org.eclipse.e4.rcp"/>
-      <feature id="org.eclipse.emf.ecp.emfforms.runtime.feature"/>
-      <feature id="org.eclipse.emf.common"/>
-      <feature id="org.eclipse.emf.common.ui"/>
-      <feature id="org.eclipse.emf.databinding"/>
-      <feature id="org.eclipse.emf.databinding.edit"/>
-      <feature id="org.eclipse.emf.ecore"/>
-      <feature id="org.eclipse.emf.ecore.edit"/>
-      <feature id="org.eclipse.emf.edit"/>
-      <feature id="org.eclipse.emf.edit.ui"/>
-   </features>
-
-
-   <preferencesInfo>
-      <targetfile overwrite="false"/>
-   </preferencesInfo>
-
-</product>
diff --git a/de.hftstuttgart.buildingphysics.application/plugin.xml b/de.hftstuttgart.buildingphysics.application/plugin.xml
index 4c0f3c1..f35c4d1 100644
--- a/de.hftstuttgart.buildingphysics.application/plugin.xml
+++ b/de.hftstuttgart.buildingphysics.application/plugin.xml
@@ -7,10 +7,10 @@
          point="org.eclipse.core.runtime.products">
       <product
             application="org.eclipse.e4.ui.workbench.swt.E4Application"
-            name="de.hftstuttgart.buildingphysics.application">
+            name="Building Physics Catalog Editor">
          <property
                name="appName"
-               value="de.hftstuttgart.buildingphysics.application">
+               value="Building Physics Catalog Editor">
          </property>
       </product>
    </extension>
diff --git a/de.hftstuttgart.buildingphysics.application/pom.xml b/de.hftstuttgart.buildingphysics.application/pom.xml
new file mode 100644
index 0000000..49343a2
--- /dev/null
+++ b/de.hftstuttgart.buildingphysics.application/pom.xml
@@ -0,0 +1,14 @@
+<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 https://maven.apache.org/xsd/maven-4.0.0.xsd">
+  <modelVersion>4.0.0</modelVersion>
+  <artifactId>de.hftstuttgart.buildingphysics.application</artifactId>
+  <packaging>eclipse-plugin</packaging>
+
+  <name>Building Physics Catalog Application</name>
+	<parent>
+		<groupId>de.hftstuttgart</groupId>
+		<artifactId>buildingphysics.parent</artifactId>
+		<version>1.0.0-SNAPSHOT</version>
+		<relativePath>../de.hftstuttgart.buildingphysics.parent</relativePath>
+	</parent>
+
+</project>
\ No newline at end of file
diff --git a/de.hftstuttgart.buildingphysics.edit/.classpath b/de.hftstuttgart.buildingphysics.edit/.classpath
index 8e001f7..48cc6ca 100644
--- a/de.hftstuttgart.buildingphysics.edit/.classpath
+++ b/de.hftstuttgart.buildingphysics.edit/.classpath
@@ -1,7 +1,7 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <classpath>
-	<classpathentry kind="src" path="src-gen"/>
-	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
+	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/J2SE-1.5"/>
 	<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
-	<classpathentry kind="output" path="bin"/>
+	<classpathentry kind="src" path="src-gen/"/>
+	<classpathentry kind="output" path="target/classes"/>
 </classpath>
diff --git a/de.hftstuttgart.buildingphysics.edit/.project b/de.hftstuttgart.buildingphysics.edit/.project
index fcb86c8..6e077f8 100644
--- a/de.hftstuttgart.buildingphysics.edit/.project
+++ b/de.hftstuttgart.buildingphysics.edit/.project
@@ -20,8 +20,14 @@
 			<arguments>
 			</arguments>
 		</buildCommand>
+		<buildCommand>
+			<name>org.eclipse.m2e.core.maven2Builder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
 	</buildSpec>
 	<natures>
+		<nature>org.eclipse.m2e.core.maven2Nature</nature>
 		<nature>org.eclipse.jdt.core.javanature</nature>
 		<nature>org.eclipse.pde.PluginNature</nature>
 	</natures>
diff --git a/de.hftstuttgart.buildingphysics.edit/pom.xml b/de.hftstuttgart.buildingphysics.edit/pom.xml
new file mode 100644
index 0000000..502584c
--- /dev/null
+++ b/de.hftstuttgart.buildingphysics.edit/pom.xml
@@ -0,0 +1,16 @@
+<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 https://maven.apache.org/xsd/maven-4.0.0.xsd">
+	<modelVersion>4.0.0</modelVersion>
+	<artifactId>de.hftstuttgart.buildingphysics.edit</artifactId>
+	<packaging>eclipse-plugin</packaging>
+	<name>Building Physics Catalog Edit</name>
+
+	<parent>
+		<groupId>de.hftstuttgart</groupId>
+		<artifactId>buildingphysics.parent</artifactId>
+		<version>1.0.0-SNAPSHOT</version>
+		<relativePath>../de.hftstuttgart.buildingphysics.parent</relativePath>
+	</parent>
+
+</project>
\ No newline at end of file
diff --git a/de.hftstuttgart.buildingphysics.feature/.project b/de.hftstuttgart.buildingphysics.feature/.project
index 1daa037..8c6d25d 100644
--- a/de.hftstuttgart.buildingphysics.feature/.project
+++ b/de.hftstuttgart.buildingphysics.feature/.project
@@ -10,8 +10,14 @@
 			<arguments>
 			</arguments>
 		</buildCommand>
+		<buildCommand>
+			<name>org.eclipse.m2e.core.maven2Builder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
 	</buildSpec>
 	<natures>
+		<nature>org.eclipse.m2e.core.maven2Nature</nature>
 		<nature>org.eclipse.pde.FeatureNature</nature>
 	</natures>
 </projectDescription>
diff --git a/de.hftstuttgart.buildingphysics.feature/feature.xml b/de.hftstuttgart.buildingphysics.feature/feature.xml
index 251cd37..db13da5 100644
--- a/de.hftstuttgart.buildingphysics.feature/feature.xml
+++ b/de.hftstuttgart.buildingphysics.feature/feature.xml
@@ -17,64 +17,26 @@
       [Enter License Description here.]
    </license>
 
-   <plugin
-         id="de.hftstuttgart.buildingphysics.application"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
+   <requires>
+      <import plugin="javax.inject"/>
+      <import plugin="org.eclipse.core.runtime"/>
+      <import plugin="org.eclipse.swt"/>
+      <import plugin="org.eclipse.e4.ui.model.workbench"/>
+      <import plugin="org.eclipse.jface"/>
+      <import plugin="org.eclipse.e4.ui.services"/>
+      <import plugin="org.eclipse.e4.ui.workbench"/>
+      <import plugin="org.eclipse.e4.core.di"/>
+      <import plugin="org.eclipse.e4.ui.di"/>
+      <import plugin="org.eclipse.e4.core.contexts"/>
+      <import plugin="org.eclipse.emf.ecore"/>
+      <import plugin="org.eclipse.emf.edit"/>
+      <import plugin="org.eclipse.emf.ecp.ui.view.swt"/>
+      <import plugin="javax.annotation"/>
+      <import plugin="org.eclipse.emf.ecp.view.model.provider.xmi"/>
+   </requires>
 
    <plugin
-         id="org.eclipse.ui"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.ui.views"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.ui.workbench"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.help"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.core.resources"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.core.filesystem"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.jface.text"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.text"
+         id="de.hftstuttgart.buildingphysics.application"
          download-size="0"
          install-size="0"
          version="0.0.0"
diff --git a/de.hftstuttgart.buildingphysics.feature/pom.xml b/de.hftstuttgart.buildingphysics.feature/pom.xml
new file mode 100644
index 0000000..a03b874
--- /dev/null
+++ b/de.hftstuttgart.buildingphysics.feature/pom.xml
@@ -0,0 +1,16 @@
+<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 https://maven.apache.org/xsd/maven-4.0.0.xsd">
+	<modelVersion>4.0.0</modelVersion>
+  <artifactId>de.hftstuttgart.buildingphysics.feature</artifactId>
+	<packaging>eclipse-feature</packaging>
+	<name>Building Physics Catalog Feature</name>
+
+	<parent>
+		<groupId>de.hftstuttgart</groupId>
+		<artifactId>buildingphysics.parent</artifactId>
+		<version>1.0.0-SNAPSHOT</version>
+		<relativePath>../de.hftstuttgart.buildingphysics.parent</relativePath>
+	</parent>
+
+</project>
\ No newline at end of file
diff --git a/de.hftstuttgart.buildingphysics.parent/.project b/de.hftstuttgart.buildingphysics.parent/.project
new file mode 100644
index 0000000..02b7bac
--- /dev/null
+++ b/de.hftstuttgart.buildingphysics.parent/.project
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+	<name>de.hftstuttgart.buildingphysics.parent</name>
+	<comment></comment>
+	<projects>
+	</projects>
+	<buildSpec>
+		<buildCommand>
+			<name>org.eclipse.m2e.core.maven2Builder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+	</buildSpec>
+	<natures>
+		<nature>org.eclipse.m2e.core.maven2Nature</nature>
+	</natures>
+</projectDescription>
diff --git a/de.hftstuttgart.buildingphysics.parent/pom.xml b/de.hftstuttgart.buildingphysics.parent/pom.xml
new file mode 100644
index 0000000..00bf542
--- /dev/null
+++ b/de.hftstuttgart.buildingphysics.parent/pom.xml
@@ -0,0 +1,72 @@
+<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 https://maven.apache.org/xsd/maven-4.0.0.xsd">
+	<modelVersion>4.0.0</modelVersion>
+	<groupId>de.hftstuttgart</groupId>
+	<artifactId>buildingphysics.parent</artifactId>
+	<version>1.0.0-SNAPSHOT</version>
+	<packaging>pom</packaging>
+	<name>Building Physics Catalog Parent POM</name>
+
+	<properties>
+		<tycho-version>2.1.0</tycho-version>
+	</properties>
+
+	<build>
+		<plugins>
+			<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</arch>
+						</environment -->
+						<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>
+		</plugins>
+	</build>
+
+	<repositories>
+		<repository>
+			<id>eclipse-2020-09</id>
+			<layout>p2</layout>
+			<url>http://download.eclipse.org/releases/2020-09</url>
+		</repository>
+	</repositories>
+
+	<modules>
+		<module>../de.hftstuttgart.buildingphysics</module>
+		<module>../de.hftstuttgart.buildingphysics.edit</module>
+		<module>../de.hftstuttgart.buildingphysics.viewmodel</module>
+		<module>../de.hftstuttgart.buildingphysics.application</module>
+		<module>../de.hftstuttgart.buildingphysics.feature</module>
+		<module>../de.hftstuttgart.buildingphysics.product</module>
+	</modules>
+</project>
\ No newline at end of file
diff --git a/de.hftstuttgart.buildingphysics.product/.project b/de.hftstuttgart.buildingphysics.product/.project
new file mode 100644
index 0000000..7f11fec
--- /dev/null
+++ b/de.hftstuttgart.buildingphysics.product/.project
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+	<name>de.hftstuttgart.buildingphysics.product</name>
+	<comment></comment>
+	<projects>
+	</projects>
+	<buildSpec>
+		<buildCommand>
+			<name>org.eclipse.m2e.core.maven2Builder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+	</buildSpec>
+	<natures>
+		<nature>org.eclipse.m2e.core.maven2Nature</nature>
+	</natures>
+</projectDescription>
diff --git a/de.hftstuttgart.buildingphysics.product/de.hftstuttgart.buildingphysics.application.product b/de.hftstuttgart.buildingphysics.product/de.hftstuttgart.buildingphysics.application.product
new file mode 100644
index 0000000..4caa7aa
--- /dev/null
+++ b/de.hftstuttgart.buildingphysics.product/de.hftstuttgart.buildingphysics.application.product
@@ -0,0 +1,60 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?pde version="3.5"?>
+
+<product name="Building Physics Catalog Editor" uid="de.hftstuttgart.buildingphysics.application.product" id="de.hftstuttgart.buildingphysics.application.product" application="org.eclipse.e4.ui.workbench.swt.E4Application" version="1.0.0.qualifier" useFeatures="true" includeLaunchers="true">
+
+   <configIni use="default">
+   </configIni>
+
+   <launcherArgs>
+      <programArgs>-clearPersistedState
+      </programArgs>
+      <vmArgsMac>-XstartOnFirstThread -Dorg.eclipse.swt.internal.carbon.smallFonts
+      </vmArgsMac>
+   </launcherArgs>
+
+   <windowImages/>
+
+   <launcher>
+      <win useIco="false">
+         <bmp/>
+      </win>
+   </launcher>
+
+   <vm>
+      <macos include="false">org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-14</macos>
+   </vm>
+
+   <plugins>
+      <plugin id="org.eclipse.emf.ecp.ui.view.swt"/>
+      <plugin id="org.eclipse.emf.ecp.view.model.provider.xmi"/>
+   </plugins>
+
+   <features>
+      <feature id="org.eclipse.e4.rcp" installMode="root"/>
+      <feature id="de.hftstuttgart.buildingphysics.feature"/>
+      <feature id="org.eclipse.emf.ecore" installMode="root"/>
+      <feature id="org.eclipse.emf.common" installMode="root"/>
+      <feature id="org.eclipse.emf.ecp.viewmodel.feature" installMode="root"/>
+      <feature id="org.eclipse.emf.ecp.view.categorization.feature" installMode="root"/>
+      <feature id="org.eclipse.emf.ecp.view.group.feature" installMode="root"/>
+      <feature id="org.eclipse.emf.ecp.view.label.feature" installMode="root"/>
+      <feature id="org.eclipse.emf.ecp.view.table.feature" installMode="root"/>
+   </features>
+
+   <configurations>
+      <plugin id="org.apache.felix.scr" autoStart="true" startLevel="2" />
+      <plugin id="org.eclipse.core.runtime" autoStart="true" startLevel="0" />
+      <plugin id="org.eclipse.equinox.common" autoStart="true" startLevel="2" />
+      <plugin id="org.eclipse.equinox.event" autoStart="true" startLevel="2" />
+      <plugin id="org.eclipse.equinox.simpleconfigurator" autoStart="true" startLevel="1" />
+   </configurations>
+
+   <preferencesInfo>
+      <targetfile overwrite="false"/>
+   </preferencesInfo>
+
+   <cssInfo>
+   </cssInfo>
+
+</product>
diff --git a/de.hftstuttgart.buildingphysics.product/pom.xml b/de.hftstuttgart.buildingphysics.product/pom.xml
new file mode 100644
index 0000000..a028eee
--- /dev/null
+++ b/de.hftstuttgart.buildingphysics.product/pom.xml
@@ -0,0 +1,46 @@
+<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 https://maven.apache.org/xsd/maven-4.0.0.xsd">
+	<modelVersion>4.0.0</modelVersion>
+	<artifactId>CatalogRepo</artifactId>
+	<packaging>eclipse-repository</packaging>
+	<name>Building Physics Catalog Product</name>
+
+	<parent>
+		<groupId>de.hftstuttgart</groupId>
+		<artifactId>buildingphysics.parent</artifactId>
+		<version>1.0.0-SNAPSHOT</version>
+		<relativePath>../de.hftstuttgart.buildingphysics.parent</relativePath>
+	</parent>
+
+	<build>
+		<plugins>
+			<plugin>
+				<groupId>org.eclipse.tycho</groupId>
+				<artifactId>tycho-p2-director-plugin</artifactId>
+				<version>${tycho-version}</version>
+				<configuration>
+					<formats>
+						<win32>zip</win32>
+						<linux>tar.gz</linux>
+						<macosx>zip</macosx>
+					</formats>
+				</configuration>
+				<executions>
+					<execution>
+						<id>materialize-products</id>
+						<goals>
+							<goal>materialize-products</goal>
+						</goals>
+					</execution>
+					<execution>
+						<id>archive-products</id>
+						<goals>
+							<goal>archive-products</goal>
+						</goals>
+					</execution>
+				</executions>
+			</plugin>
+		</plugins>
+	</build>
+</project>
\ No newline at end of file
diff --git a/de.hftstuttgart.buildingphysics.viewmodel/.classpath b/de.hftstuttgart.buildingphysics.viewmodel/.classpath
new file mode 100644
index 0000000..a9f4be7
--- /dev/null
+++ b/de.hftstuttgart.buildingphysics.viewmodel/.classpath
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
+	<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
+	<classpathentry kind="output" path="target/classes"/>
+</classpath>
diff --git a/de.hftstuttgart.buildingphysics.viewmodel/.project b/de.hftstuttgart.buildingphysics.viewmodel/.project
index 318e304..3e940ee 100644
--- a/de.hftstuttgart.buildingphysics.viewmodel/.project
+++ b/de.hftstuttgart.buildingphysics.viewmodel/.project
@@ -1,50 +1,40 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<?xml version="1.0" encoding="UTF-8"?>
 <projectDescription>
-    	
-    <name>de.hftstuttgart.buildingphysics.viewmodel</name>
-    	
-    <comment/>
-    	
-    <projects>
+	<name>de.hftstuttgart.buildingphysics.viewmodel</name>
+	<comment></comment>
+	<projects>
 	</projects>
-    	
-    <buildSpec>
-        		
-        <buildCommand>
-            			
-            <name>org.eclipse.pde.ManifestBuilder</name>
-            			
-            <arguments>
+	<buildSpec>
+		<buildCommand>
+			<name>org.eclipse.jdt.core.javabuilder</name>
+			<arguments>
 			</arguments>
-            		
-        </buildCommand>
-        		
-        <buildCommand>
-            			
-            <name>org.eclipse.pde.SchemaBuilder</name>
-            			
-            <arguments>
+		</buildCommand>
+		<buildCommand>
+			<name>org.eclipse.pde.ManifestBuilder</name>
+			<arguments>
 			</arguments>
-            		
-        </buildCommand>
-        		
-        <buildCommand>
-            			
-            <name>org.eclipse.emfforms.ide.builder.viewModelBuilder</name>
-            			
-            <arguments>
+		</buildCommand>
+		<buildCommand>
+			<name>org.eclipse.pde.SchemaBuilder</name>
+			<arguments>
 			</arguments>
-            		
-        </buildCommand>
-        	
-    </buildSpec>
-    	
-    <natures>
-        		
-        <nature>org.eclipse.pde.PluginNature</nature>
-        		
-        <nature>org.eclipse.emfforms.ide.builder.viewModelNature</nature>
-        	
-    </natures>
-    
+		</buildCommand>
+		<buildCommand>
+			<name>org.eclipse.emfforms.ide.builder.viewModelBuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+		<buildCommand>
+			<name>org.eclipse.m2e.core.maven2Builder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+	</buildSpec>
+	<natures>
+		<nature>org.eclipse.m2e.core.maven2Nature</nature>
+		<nature>org.eclipse.pde.PluginNature</nature>
+		<nature>org.eclipse.emfforms.ide.builder.viewModelNature</nature>
+		<nature>org.eclipse.jdt.core.javanature</nature>
+	</natures>
 </projectDescription>
diff --git a/de.hftstuttgart.buildingphysics.viewmodel/pom.xml b/de.hftstuttgart.buildingphysics.viewmodel/pom.xml
new file mode 100644
index 0000000..4ea7e80
--- /dev/null
+++ b/de.hftstuttgart.buildingphysics.viewmodel/pom.xml
@@ -0,0 +1,16 @@
+<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 https://maven.apache.org/xsd/maven-4.0.0.xsd">
+	<modelVersion>4.0.0</modelVersion>
+	<artifactId>de.hftstuttgart.buildingphysics.viewmodel</artifactId>
+	<packaging>eclipse-plugin</packaging>
+	<name>Building Physics Catalog View Model</name>
+
+	<parent>
+		<groupId>de.hftstuttgart</groupId>
+		<artifactId>buildingphysics.parent</artifactId>
+		<version>1.0.0-SNAPSHOT</version>
+		<relativePath>../de.hftstuttgart.buildingphysics.parent</relativePath>
+	</parent>
+
+</project>
\ No newline at end of file
diff --git a/de.hftstuttgart.buildingphysics/.classpath b/de.hftstuttgart.buildingphysics/.classpath
index f9f04ed..48cc6ca 100644
--- a/de.hftstuttgart.buildingphysics/.classpath
+++ b/de.hftstuttgart.buildingphysics/.classpath
@@ -1,8 +1,7 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <classpath>
-	<classpathentry kind="src" path="src-gen"/>
-	<classpathentry kind="src" path="src"/>
-	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
+	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/J2SE-1.5"/>
 	<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
-	<classpathentry kind="output" path="bin"/>
+	<classpathentry kind="src" path="src-gen/"/>
+	<classpathentry kind="output" path="target/classes"/>
 </classpath>
diff --git a/de.hftstuttgart.buildingphysics/.project b/de.hftstuttgart.buildingphysics/.project
index ed67443..572fe28 100644
--- a/de.hftstuttgart.buildingphysics/.project
+++ b/de.hftstuttgart.buildingphysics/.project
@@ -20,8 +20,14 @@
 			<arguments>
 			</arguments>
 		</buildCommand>
+		<buildCommand>
+			<name>org.eclipse.m2e.core.maven2Builder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
 	</buildSpec>
 	<natures>
+		<nature>org.eclipse.m2e.core.maven2Nature</nature>
 		<nature>org.eclipse.sirius.nature.modelingproject</nature>
 		<nature>org.eclipse.jdt.core.javanature</nature>
 		<nature>org.eclipse.pde.PluginNature</nature>
diff --git a/de.hftstuttgart.buildingphysics/pom.xml b/de.hftstuttgart.buildingphysics/pom.xml
new file mode 100644
index 0000000..65f7c35
--- /dev/null
+++ b/de.hftstuttgart.buildingphysics/pom.xml
@@ -0,0 +1,16 @@
+<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 https://maven.apache.org/xsd/maven-4.0.0.xsd">
+	<modelVersion>4.0.0</modelVersion>
+	<artifactId>de.hftstuttgart.buildingphysics</artifactId>
+	<packaging>eclipse-plugin</packaging>
+	<name>Building Physics Catalog Model</name>
+
+	<parent>
+		<groupId>de.hftstuttgart</groupId>
+		<artifactId>buildingphysics.parent</artifactId>
+		<version>1.0.0-SNAPSHOT</version>
+		<relativePath>../de.hftstuttgart.buildingphysics.parent</relativePath>
+	</parent>
+	
+</project>
\ No newline at end of file
-- 
GitLab