Project creation
Cette page a pour but d’informer sur la mise en place d’un projet Delivery avec une version 15 et plus de Process. Il est conseillé de suivre toutes les étapes pour assurer une cohérence entre les différents projets existants, et permettre ainsi une meilleure reprise.
Version du JDK
Il est conseillé d’utiliser la même version que Process, pour simplifier il est possible de pointer directement sur le dossier jdk présent à la racine de l’installation de Process.
- Process 2009/2010 : JDK Oracle 5
- Process 2011 à 15.x : JDK Oracle 7
- Process 16.x : JDK Oracle 8
- Process 17.0 : OpenJDK 8
- Process 2025.0 : OpenJDK 21
Configuration de Maven
Il est conseillé d’utiliser la version embarquée par IntelliJ afin de simplifier la configuration. Bundled (Maven 3)
Le fichier .m2/setting.xml doit être comme suit :
<?xml version="1.0" encoding="UTF-8"?>
<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 http://maven.apache.org/xsd/settings-1.0.0.xsd">
<profiles>
<profile>
<id>repository.devops.moovapps.com</id>
<repositories>
<repository>
<id>java-moovapps-public</id>
<url>https://repository.devops.moovapps.com/repository/java-moovapps-public/</url>
<releases>
<enabled>true</enabled>
</releases>
<snapshots>
<enabled>true</enabled>
</snapshots>
</repository>
<repository>
<id>java-moovapps-private</id>
<url>https://repository.devops.moovapps.com/repository/java-moovapps-private/</url>
<releases>
<enabled>true</enabled>
</releases>
<snapshots>
<enabled>true</enabled>
</snapshots>
</repository>
</repositories>
<pluginRepositories>
<pluginRepository>
<id>java-moovapps-private-plugins</id>
<url>https://repository.devops.moovapps.com/repository/java-moovapps-private/</url>
<releases>
<enabled>true</enabled>
</releases>
<snapshots>
<enabled>true</enabled>
</snapshots>
</pluginRepository>
</pluginRepositories>
</profile>
</profiles>
<activeProfiles>
<activeProfile>repository.devops.moovapps.com</activeProfile>
</activeProfiles>
</settings>
Structure du projet
Un outil de création de projet rapide a été créé et est disponible ici.
Pour un déploiement fonctionnel, le projet vide doit se présenter ainsi :
Le fichier home.properties doit contenir le chemin vers le dossier destiné à contenir le déploiement :
VDOC_HOME=C:/MyPath
Le fichier custom/resources/*-delivery.xml doit être de la forme suivante :
<?xml version="1.0" encoding="UTF-8"?>
<delivery product-version="16.4.0" version="1.0.0">
<title>client-projet</title>
<description>Description du projet</description>
<category>project</category>
</delivery>
Le fichier pom.xml varie selon la version de Process (identique depuis la V17 mis à par la version du SDK) :
<?xml version="1.0" encoding="UTF-8"?>
<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>
<parent>
<groupId>com.vdoc.engineering</groupId>
<artifactId>sdk.advanced</artifactId>
<version>15.5.0</version>
</parent>
<artifactId>client.projet</artifactId>
<groupId>com.vdoc.services</groupId>
<version>1.0.0</version>
<properties>
<maven.compiler.source>1.7</maven.compiler.source>
<maven.compiler.target>1.7</maven.compiler.target>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>
<dependencies></dependencies>
<profiles>
<profile>
<id>packager</id>
<build>
<plugins>
<plugin>
<groupId>com.vdoc.maven</groupId>
<artifactId>vdoc-maven-plugin</artifactId>
<version>15.0.0</version>
</plugin>
</plugins>
</build>
</profile>
</profiles>
</project>
<?xml version="1.0" encoding="UTF-8"?>
<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>
<parent>
<groupId>com.vdoc.engineering</groupId>
<artifactId>sdk.advanced</artifactId>
<version>16.4.0</version>
</parent>
<artifactId>client-projet</artifactId>
<groupId>com.vdoc.services</groupId>
<version>1.0.0</version>
<properties>
<maven.compiler.source>1.8</maven.compiler.source>
<maven.compiler.target>1.8</maven.compiler.target>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>
<dependencies></dependencies>
</project>
<?xml version="1.0" encoding="UTF-8"?>
<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>
<parent>
<groupId>com.vdoc.engineering</groupId>
<artifactId>sdk.advanced</artifactId>
<version>17.2.1</version>
</parent>
<artifactId>client-projet</artifactId>
<groupId>com.vdoc.services</groupId>
<version>1.0.0</version>
<properties>
<maven.compiler.source>1.8</maven.compiler.source>
<maven.compiler.target>1.8</maven.compiler.target>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>
<dependencies></dependencies>
<profiles>
<profile>
<id>packager</id>
<activation>
<activeByDefault>true</activeByDefault>
</activation>
</profile>
</profiles>
</project>
Il convient d’activer tous les profiles, sauf deployer qui est facultatif (réalise un déploiement automatique sur l’instance ciblée par home.properties).
Pour éviter les envoies inutiles de fichiers sur le gestionnaire de version, un fichier .gitignore est conseillé, dont voici un exemple standard :
.gitignore
.idea/
target/
home.properties
*.iml
Débogage
Depuis Process16.0.0, le fichier script/custom/var.bat possède une variable DEBUG_MODE et une variable DEBUG_PORT_VAR :
Depuis IntelliJ, il est alors possible d’acitver le mode de débogage à distance avec les informations renseignées dans le script :
Sources :