Rsession
Used in:
components
- OverviewOverview
- VersionsVersions
- DependentsDependents
- DependenciesDependencies
<dependency>
<groupId>com.github.yannrichet</groupId>
<artifactId>Rsession</artifactId>
<version>3.1.9</version>
</dependency><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">
<parent>
<groupId>org.sonatype.oss</groupId>
<artifactId>oss-parent</artifactId>
<version>9</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<groupId>com.github.yannrichet</groupId>
<artifactId>Rsession</artifactId>
<version>3.1.9</version>
<packaging>jar</packaging>
<name>rsession</name>
<url>https://github.com/yannrichet/rsession</url>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<github.global.server>github</github.global.server>
<!-- By default, run all tests -->
<rsession.skip.r2js>false</rsession.skip.r2js>
<rsession.skip.renjin>false</rsession.skip.renjin>
<rsession.skip.rserve>false</rsession.skip.rserve>
<maven.compiler.source>11</maven.compiler.source>
<maven.compiler.target>11</maven.compiler.target>
</properties>
<profiles>
<!-- Profile to run only R2js tests -->
<profile>
<id>r2js-only</id>
<activation>
<property>
<name>env.RSESSION_INSTANCE</name>
<value>R2js</value>
</property>
</activation>
<properties>
<rsession.skip.r2js>false</rsession.skip.r2js>
<rsession.skip.renjin>true</rsession.skip.renjin>
<rsession.skip.rserve>true</rsession.skip.rserve>
</properties>
</profile>
<!-- Profile to run only Renjin tests -->
<profile>
<id>renjin-only</id>
<activation>
<property>
<name>env.RSESSION_INSTANCE</name>
<value>Renjin</value>
</property>
</activation>
<properties>
<rsession.skip.r2js>true</rsession.skip.r2js>
<rsession.skip.renjin>false</rsession.skip.renjin>
<rsession.skip.rserve>true</rsession.skip.rserve>
</properties>
</profile>
<!-- Profile to run only Rserve tests -->
<profile>
<id>rserve-only</id>
<activation>
<property>
<name>env.RSESSION_INSTANCE</name>
<value>Rserve</value>
</property>
</activation>
<properties>
<rsession.skip.r2js>true</rsession.skip.r2js>
<rsession.skip.renjin>true</rsession.skip.renjin>
<rsession.skip.rserve>false</rsession.skip.rserve>
</properties>
</profile>
<!-- Profile for Java 11 (Nashorn) -->
<profile>
<id>java11</id>
<activation>
<jdk>[11,12)</jdk>
</activation>
<properties>
<maven.compiler.source>11</maven.compiler.source>
<maven.compiler.target>11</maven.compiler.target>
</properties>
<dependencies>
<dependency>
<groupId>org.openjdk.nashorn</groupId>
<artifactId>nashorn-core</artifactId>
<version>15.4</version>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.8.1</version>
<configuration>
<excludes>
<exclude>**/executors/GraalVMExecutor.java</exclude>
</excludes>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-javadoc-plugin</artifactId>
<version>3.11.2</version>
<configuration>
<sourceFileExcludes>
<!-- Exclude all files in executors directory, otherwise javadoc still can see GraalVM class ... -->
<sourceFileExclude>**/executors/*.java</sourceFileExclude>
</sourceFileExcludes>
</configuration>
<executions>
<execution>
<id>attach-javadocs</id>
<goals>
<goal>jar</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
</profile>
<!-- Profile for Java 21+ (GraalVM) -->
<profile>
<id>java21</id>
<activation>
<jdk>[21,)</jdk>
</activation>
<properties>
<maven.compiler.source>21</maven.compiler.source>
<maven.compiler.target>21</maven.compiler.target>
</properties>
<dependencies>
<dependency>
<groupId>org.graalvm.polyglot</groupId>
<artifactId>polyglot</artifactId>
<version>24.1.1</version>
</dependency>
<dependency>
<groupId>org.graalvm.polyglot</groupId>
<artifactId>js</artifactId>
<version>24.1.1</version>
<type>pom</type>
</dependency>
<dependency>
<groupId>org.graalvm.truffle</groupId>
<artifactId>truffle-api</artifactId>
<version>24.1.1</version>
<type>pom</type>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.8.1</version>
<configuration>
<excludes>
<exclude>**/executors/NashornExecutor.java</exclude>
</excludes>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-javadoc-plugin</artifactId>
<version>3.11.2</version>
<configuration>
<sourceFileExcludes>
<!-- Exclude all files in executors directory, otherwise javadoc still can see Nashorn class ... -->
<sourceFileExclude>**/executors/*.java</sourceFileExclude>
</sourceFileExcludes>
</configuration>
<executions>
<execution>
<id>attach-javadocs</id>
<goals>
<goal>jar</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
</profile>
<!-- Release profile for signing artifacts -->
<profile>
<id>release</id>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-gpg-plugin</artifactId>
<version>3.2.7</version>
<executions>
<execution>
<id>sign-artifacts</id>
<phase>verify</phase>
<goals>
<goal>sign</goal>
</goals>
<configuration>
<gpgArguments>
<arg>--pinentry-mode</arg>
<arg>loopback</arg>
</gpgArguments>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
</profile>
</profiles>
<dependencies>
<dependency>
<groupId>org.ow2.asm</groupId>
<artifactId>asm</artifactId>
<version>9.2</version> <!-- Use a compatible version -->
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
<version>1.7.12</version>
</dependency>
<dependency>
<groupId>commons-io</groupId>
<artifactId>commons-io</artifactId>
<version>2.14.0</version>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<scope>test</scope>
<version>4.13.1</version>
</dependency>
<dependency>
<groupId>com.github.yannrichet</groupId>
<artifactId>JMathArray</artifactId>
<version>1.0</version>
</dependency>
<dependency>
<groupId>org.rosuda.REngine</groupId>
<artifactId>REngine</artifactId>
<version>2.1.0</version>
</dependency>
<dependency>
<groupId>org.rosuda.REngine</groupId>
<artifactId>Rserve</artifactId>
<version>1.8.1</version>
</dependency>
<dependency>
<groupId>org.eclipse.aether</groupId>
<artifactId>aether-api</artifactId>
<version>1.0.2.v20150114</version>
<type>jar</type>
</dependency>
<dependency>
<groupId>org.renjin</groupId>
<artifactId>renjin-aether-package-loader</artifactId>
<version>3.5-beta76</version>
<type>jar</type>
</dependency>
<dependency>
<groupId>org.renjin</groupId>
<artifactId>renjin-script-engine</artifactId>
<version>3.5-beta76</version>
</dependency>
<dependency>
<groupId>org.renjin</groupId>
<artifactId>grDevices</artifactId>
<version>3.5-beta76</version>
</dependency>
</dependencies>
<repositories>
<repository>
<id>sonatype-oss-releases</id>
<url>https://oss.sonatype.org/content/repositories/releases</url>
</repository>
<repository>
<id>bedatadriven</id>
<name>bedatadriven public repo</name>
<url>https://nexus.bedatadriven.com/content/groups/public/</url>
</repository>
</repositories>
<build>
<resources>
<resource>
<directory>src/main/resources</directory>
<filtering>false</filtering>
<includes>
<include>**/Rserve*</include>
<include>**/*.js</include>
</includes>
<targetPath>.</targetPath>
</resource>
</resources>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>2.22.2</version>
<configuration>
<!-- Use @{argLine} to preserve jacoco argLine -->
<argLine>@{argLine} --add-opens=java.base/java.util=ALL-UNNAMED --add-opens=java.base/java.lang=ALL-UNNAMED --add-opens=java.base/java.lang.reflect=ALL-UNNAMED --add-opens=java.base/java.io=ALL-UNNAMED --add-opens=java.base/java.nio=ALL-UNNAMED --add-opens=java.base/sun.nio.ch=ALL-UNNAMED --add-opens=java.base/java.util.concurrent=ALL-UNNAMED --add-opens=java.base/java.util.concurrent.atomic=ALL-UNNAMED --add-opens=java.base/jdk.internal.misc=ALL-UNNAMED --add-opens=java.base/jdk.internal.ref=ALL-UNNAMED --add-opens=java.base/sun.misc=ALL-UNNAMED --add-exports=java.base/jdk.internal.module=ALL-UNNAMED --add-exports=java.base/sun.misc=ALL-UNNAMED</argLine>
</configuration>
<executions>
<!-- Disable default test execution -->
<execution>
<id>default-test</id>
<phase>test</phase>
<configuration>
<skip>true</skip>
</configuration>
</execution>
<!-- Run common tests (not R2js/Renjin/Rserve specific) -->
<execution>
<id>test-common</id>
<phase>test</phase>
<goals>
<goal>test</goal>
</goals>
<configuration>
<includes>
<include>**/*Test.java</include>
</includes>
<excludes>
<exclude>**/R2js*Test.java</exclude>
<exclude>**/Renjin*Test.java</exclude>
<exclude>**/Rserve*Test.java</exclude>
</excludes>
</configuration>
</execution>
<!-- Run R2js-specific tests -->
<execution>
<id>test-r2js</id>
<phase>test</phase>
<goals>
<goal>test</goal>
</goals>
<configuration>
<skip>${rsession.skip.r2js}</skip>
<includes>
<include>**/R2js*Test.java</include>
</includes>
</configuration>
</execution>
<!-- Run Renjin-specific tests -->
<execution>
<id>test-renjin</id>
<phase>test</phase>
<goals>
<goal>test</goal>
</goals>
<configuration>
<skip>${rsession.skip.renjin}</skip>
<includes>
<include>**/Renjin*Test.java</include>
</includes>
</configuration>
</execution>
<!-- Run Rserve-specific tests -->
<execution>
<id>test-rserve</id>
<phase>test</phase>
<goals>
<goal>test</goal>
</goals>
<configuration>
<skip>${rsession.skip.rserve}</skip>
<includes>
<include>**/Rserve*Test.java</include>
</includes>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<version>2.5</version>
<configuration>
<includes>
<include>**/*.class</include>
<include>**/*.zip</include>
<include>**/*.tgz</include>
<include>**/*.tar.gz</include>
<include>**/*.js</include>
</includes>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-install-plugin</artifactId>
<version>2.5.2</version>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-release-plugin</artifactId>
<version>2.4.2</version>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-source-plugin</artifactId>
<version>2.2.1</version>
<executions>
<execution>
<id>attach-sources</id>
<goals>
<goal>jar-no-fork</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-gpg-plugin</artifactId>
<version>3.2.7</version>
<executions>
<execution>
<id>sign-artifacts</id>
<phase>verify</phase>
<goals>
<goal>sign</goal>
</goals>
<configuration>
<gpgArguments>
<arg>--pinentry-mode</arg>
<arg>loopback</arg>
</gpgArguments>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.sonatype.plugins</groupId>
<artifactId>nexus-staging-maven-plugin</artifactId>
<version>1.6.13</version>
<extensions>true</extensions>
<configuration>
<serverId>ossrh</serverId>
<!--nexusUrl>https://oss.sonatype.org/</nexusUrl-->
<nexusUrl>https://ossrh-staging-api.central.sonatype.com/</nexusUrl>
<autoReleaseAfterClose>true</autoReleaseAfterClose>
</configuration>
</plugin>
<plugin>
<groupId>com.github.github</groupId>
<artifactId>site-maven-plugin</artifactId>
<version>0.12</version>
<configuration>
<message>Creating site for ${project.version}</message>
</configuration>
<executions>
<execution>
<goals>
<goal>site</goal>
</goals>
<phase>site</phase>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.jacoco</groupId>
<artifactId>jacoco-maven-plugin</artifactId>
<version>0.8.11</version>
<configuration>
<excludes>
<exclude>**/org/rosuda/*</exclude>
<exclude>**/*.zip</exclude>
</excludes>
</configuration>
<executions>
<execution>
<goals>
<goal>prepare-agent</goal>
</goals>
</execution>
<!-- attached to Maven test phase -->
<execution>
<id>report</id>
<phase>test</phase>
<goals>
<goal>report</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<artifactId>maven-assembly-plugin</artifactId>
<configuration>
<archive>
</archive>
<finalName>../lib/renjin</finalName>
<descriptors>
<descriptor>renjin.xml</descriptor>
</descriptors>
<!--descriptorRefs>
<descriptorRef>jar-with-dependencies</descriptorRef>
</descriptorRefs-->
</configuration>
</plugin>
</plugins>
<finalName>rsession</finalName>
</build>
<licenses>
<license>
<name>BSD</name>
<url>https://opensource.org/licenses/BSD-2-Clause</url>
<distribution>repo</distribution>
</license>
</licenses>
<developers>
<developer>
<id>yannrichet</id>
<name>Yann Richet</name>
<email>yann.richet@laposte.net</email>
</developer>
</developers>
<scm>
<connection>scm:git:git@github.com:yannrichet/rsession.git</connection>
<developerConnection>scm:git:git@github.com:yannrichet/rsession.git</developerConnection>
<url>git@github.com:yannrichet/rsession.git</url>
<tag>Rsession-3.1.7</tag>
</scm>
<reporting>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-javadoc-plugin</artifactId>
<version>2.8</version>
</plugin>
</plugins>
</reporting>
<distributionManagement>
<snapshotRepository>
<id>ossrh</id>
<url>https://oss.sonatype.org/content/repositories/snapshots</url>
</snapshotRepository>
<repository>
<id>ossrh</id>
<url>https://oss.sonatype.org/service/local/staging/deploy/maven2/</url>
</repository>
</distributionManagement>
</project>