DATAJPA-1631 - Enable building on Java 11.

Switch to working AspectJ Maven plugin. Truncate JSR-310 comparison precision to millis.
This commit is contained in:
Mark Paluch
2019-11-13 12:13:09 +01:00
committed by Greg Turnquist
parent 25ebe74915
commit 211f1e046b
5 changed files with 87 additions and 39 deletions

View File

@@ -1,35 +1,13 @@
language: java
jdk:
- oraclejdk8
env:
matrix:
- PROFILE=ci
- PROFILE=spring5-next
- PROFILE=hibernate-next
- PROFILE=hibernate-53
- PROFILE=hibernate-53-next
- PROFILE=hibernate-54
- PROFILE=hibernate-54-next
- PROFILE=hibernate-6
- PROFILE=eclipselink-next
- PROFILE=eclipselink-27
- PROFILE=eclipselink-27-next
- PROFILE=querydsl-next
jobs:
allow_failures:
- env: PROFILE=hibernate-next
cache:
directories:
- $HOME/.m2
before_install:
- test ! -f ~/.m2/settings.xml || rm ~/.m2/settings.xml
install: true
script: "mvn clean dependency:list test -P${PROFILE} -Dsort -Dbundlor.enabled=false -B"
notifications:
slack:
secure: VYoJ2D6BM3etTNHJArJ47rVvj49PRZ+eIg12itOzlQSCnsPPob9X2OJVZ8Umatfx6TyP+rOrJAz+pqA1geumEzx+dIWTtBf6og703XKS9feLpM7sa1DupdstlGu506Wwevmb7nUq/Ct0ziCZykD3Cqu9tOhnai5wWlULBYDQ4WE=
script: "./mvnw -Pjava11 clean dependency:list test -Pjava11,${PROFILE} -Dsort -B"

78
Jenkinsfile vendored
View File

@@ -12,7 +12,28 @@ pipeline {
}
stages {
stage("Test") {
stage("test: baseline (jdk8)") {
when {
anyOf {
branch 'master'
not { triggeredBy 'UpstreamCause' }
}
}
agent {
docker {
image 'adoptopenjdk/openjdk8:latest'
label 'data'
args '-v $HOME:/tmp/jenkins-home'
}
}
options { timeout(time: 30, unit: 'MINUTES') }
steps {
sh 'rm -rf ?'
sh 'MAVEN_OPTS="-Duser.name=jenkins -Duser.home=/tmp/jenkins-home" ./mvnw clean dependency:list test -Dsort -Dbundlor.enabled=false -U -B'
}
}
stage("Test other configurations") {
when {
anyOf {
branch 'master'
@@ -20,10 +41,10 @@ pipeline {
}
}
parallel {
stage("test: baseline") {
stage("test: baseline (jdk11)") {
agent {
docker {
image 'adoptopenjdk/openjdk8:latest'
image 'adoptopenjdk/openjdk11:latest'
label 'data'
args '-v $HOME:/tmp/jenkins-home'
}
@@ -31,10 +52,26 @@ pipeline {
options { timeout(time: 30, unit: 'MINUTES') }
steps {
sh 'rm -rf ?'
sh 'MAVEN_OPTS="-Duser.name=jenkins -Duser.home=/tmp/jenkins-home" ./mvnw clean dependency:list test -Dsort -Dbundlor.enabled=false -U -B'
sh 'MAVEN_OPTS="-Duser.name=jenkins -Duser.home=/tmp/jenkins-home" ./mvnw -Pjava11 clean dependency:list test -Dsort -Dbundlor.enabled=false -U -B'
}
}
stage("test: eclipselink-next") {
stage("test: baseline (jdk13)") {
agent {
docker {
image 'adoptopenjdk/openjdk13:latest'
label 'data'
args '-v $HOME:/tmp/jenkins-home'
}
}
options { timeout(time: 30, unit: 'MINUTES') }
steps {
sh 'rm -rf ?'
sh 'MAVEN_OPTS="-Duser.name=jenkins -Duser.home=/tmp/jenkins-home" ./mvnw -Pjava11 clean dependency:list test -Dsort -Dbundlor.enabled=false -U -B'
}
}
stage("test: eclipselink-next (jdk8)") {
agent {
docker {
image 'adoptopenjdk/openjdk8:latest'
@@ -48,8 +85,39 @@ pipeline {
sh 'MAVEN_OPTS="-Duser.name=jenkins -Duser.home=/tmp/jenkins-home" ./mvnw -Peclipselink-next clean dependency:list test -Dsort -Dbundlor.enabled=false -U -B'
}
}
stage("test: eclipselink-next (jdk11)") {
agent {
docker {
image 'adoptopenjdk/openjdk11:latest'
label 'data'
args '-v $HOME:/tmp/jenkins-home'
}
}
options { timeout(time: 30, unit: 'MINUTES') }
steps {
sh 'rm -rf ?'
sh 'MAVEN_OPTS="-Duser.name=jenkins -Duser.home=/tmp/jenkins-home" ./mvnw -Peclipselink-next,java11 clean dependency:list test -Dsort -Dbundlor.enabled=false -U -B'
}
}
stage("test: eclipselink-next (jdk13)") {
agent {
docker {
image 'adoptopenjdk/openjdk13:latest'
label 'data'
args '-v $HOME:/tmp/jenkins-home'
}
}
options { timeout(time: 30, unit: 'MINUTES') }
steps {
sh 'rm -rf ?'
sh 'MAVEN_OPTS="-Duser.name=jenkins -Duser.home=/tmp/jenkins-home" ./mvnw -Peclipselink-next,java11 clean dependency:list test -Dsort -Dbundlor.enabled=false -U -B'
}
}
}
}
stage('Release to artifactory') {
when {
anyOf {

View File

@@ -375,9 +375,9 @@
</plugin>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<groupId>io.starter</groupId>
<artifactId>aspectj-maven-plugin</artifactId>
<version>1.8</version>
<version>1.12.9</version>
<dependencies>
<dependency>
<groupId>org.aspectj</groupId>

View File

@@ -24,6 +24,7 @@ import java.time.LocalDate;
import java.time.LocalDateTime;
import java.time.LocalTime;
import java.time.ZoneId;
import java.time.temporal.ChronoUnit;
import javax.persistence.EntityManager;
import javax.persistence.PersistenceContext;
@@ -39,6 +40,7 @@ import org.springframework.transaction.annotation.Transactional;
*
* @author Oliver Gierke
* @author Jens Schauder
* @author Mark Paluch
*/
@ContextConfiguration
@Transactional
@@ -46,17 +48,17 @@ public class Jsr310JpaConvertersIntegrationTests extends AbstractAttributeConver
@PersistenceContext EntityManager em;
@Test // DATAJPA-650
@Test // DATAJPA-650, DATAJPA-1631
public void usesJsr310JpaConverters() {
assumeTrue(currentEntityManagerIsAJpa21EntityManager(em));
DateTimeSample sample = new DateTimeSample();
sample.instant = Instant.now();
sample.instant = Instant.now().truncatedTo(ChronoUnit.MILLIS);
sample.localDate = LocalDate.now();
sample.localTime = LocalTime.now();
sample.localDateTime = LocalDateTime.now();
sample.localTime = LocalTime.now().truncatedTo(ChronoUnit.MILLIS);
sample.localDateTime = LocalDateTime.now().truncatedTo(ChronoUnit.MILLIS);
sample.zoneId = ZoneId.of("Europe/Berlin");
em.persist(sample);

View File

@@ -62,7 +62,7 @@ public class JpaRepositoryFactoryBeanUnitTests {
StubRepositoryFactorySupport factory;
@Mock ListableBeanFactory beanFactory;
@Mock PersistenceExceptionTranslator translator;
@Mock Repository<?, ?> repository;
@Mock(extraInterfaces = SimpleSampleRepository.class) Repository<?, ?> repository;
@Mock Metamodel metamodel;
@Before
@@ -110,7 +110,7 @@ public class JpaRepositoryFactoryBeanUnitTests {
new JpaRepositoryFactoryBean<Repository<Object, Long>, Object, Long>(null);
}
private interface SimpleSampleRepository extends JpaRepository<User, Integer> {
public interface SimpleSampleRepository extends JpaRepository<User, Integer> {
}