jdk10升级后嵌入式cassandra不工作

dgsult0t  于 2021-06-15  发布在  Cassandra
关注(0)|答案(2)|浏览(424)

jdk10升级后嵌入式cassandra不工作。谁能帮我一下吗。
Cassandra配置:

try {
            EmbeddedCassandraServerHelper.startEmbeddedCassandra(); 
        }catch (Exception e) {
            LOGGER.error(" CommonConfig ",
                    " cluster()::Exception while creating cluster ", e);
            System.setProperty("cassandra.config", "cassandra.yaml");
            DatabaseDescriptor.daemonInitialization();
            EmbeddedCassandraServerHelper.startEmbeddedCassandra();
        }
        Cluster cluster = Cluster.builder()
                .addContactPoints(environment.getProperty(TextToClipConstants.CASSANDRA_CONTACT_POINTS)).withPort(Integer.parseInt(environment.getProperty(TextToClipConstants.CASSANDRA_PORT))).build();
        Session session = cluster.connect(); 
        session.execute(KEYSPACE_CREATION_QUERY);
        session.execute(KEYSPACE_ACTIVATE_QUERY);

构建.gradle

import com.bmuschko.gradle.docker.tasks.image.Dockerfile
import java.text.SimpleDateFormat;
import org.apache.tools.ant.taskdefs.condition.Os

buildscript {
    ext {
        springBootVersion = '2.0.1.RELEASE'
    }
    repositories {
        mavenCentral()

        mavenLocal()
    }
    dependencies {
        classpath("org.springframework.boot:spring-boot-gradle-plugin:${springBootVersion}")
        classpath ("com.bmuschko:gradle-docker-plugin:3.2.1")
        classpath ("org.sonarsource.scanner.gradle:sonarqube-gradle-plugin:2.5")
        classpath("au.com.dius:pact-jvm-provider-gradle_2.12:3.5.13")
        classpath ("com.moowork.gradle:gradle-node-plugin:1.2.0")

    }
}

plugins {
    //id "au.com.dius.pact" version "3.5.7"
    id "com.gorylenko.gradle-git-properties" version "1.4.17"
    id "de.undercouch.download" version "3.4.2"

}

apply plugin: 'java'
apply plugin: 'eclipse'
apply plugin: 'org.springframework.boot'
apply plugin: 'io.spring.dependency-management'
apply plugin: 'com.bmuschko.docker-remote-api'
apply plugin: 'jacoco'
apply plugin: 'maven-publish'
apply plugin: 'org.sonarqube'
apply plugin: 'au.com.dius.pact'
apply plugin: 'scala'

sourceCompatibility = 1.8

repositories {
    mavenCentral()

    maven { url "https://repo.spring.io/milestone" }
    mavenLocal()
}

ext {
    springCloudVersion = 'Finchley.RELEASE'
}

pact {
    serviceProviders {
        rxorder {
            publish {
                pactDirectory = '/Users/sv/Documents/wag-doc-text2clip/target/pacts' // defaults to $buildDir/pacts
                pactBrokerUrl = 'http://localhost:80'
                version=2.0
            }
        }
    }
}

//start of integration tests changes
sourceSets {
    integrationTest {
        java {
            compileClasspath += main.output + test.output
            runtimeClasspath += main.output + test.output
            srcDir file('test/functional-api/java')
        }
        resources.srcDir file('test/functional-api/resources')
    }
}

configurations {
    integrationTestCompile.extendsFrom testCompile
    integrationTestRuntime.extendsFrom testRuntime
}
//end of integration tests changes
dependencies {
    //web (Tomcat, Logging, Rest)
    compile group: 'org.springframework.boot',   name: 'spring-boot-starter-web'
    // Redis
    //compile group: 'org.springframework.boot', name: 'spring-boot-starter-data-redis'
    //Mongo Starter
    compile group: 'org.springframework.boot', name:'spring-boot-starter-data-mongodb'

    // Configuration processor - To Generate MetaData Files. The files are designed to let  developers offer “code completion� as users are working with application.properties
    compile group: 'org.springframework.boot', name: 'spring-boot-configuration-processor'
    // Actuator - Monitoring
    compile group: 'org.springframework.boot', name: 'spring-boot-starter-actuator'

    //Sleuth - Tracing
    compile group: 'org.springframework.cloud', name: 'spring-cloud-starter-sleuth'
    //Hystrix - Circuit Breaker
    compile group: 'org.springframework.cloud', name: 'spring-cloud-starter-netflix-hystrix'
    // Hystrix - Dashboard
    compile group: 'org.springframework.cloud', name: 'spring-cloud-starter-netflix-hystrix-dashboard'
    // Thymeleaf
    compile group: 'org.springframework.boot', name: 'spring-boot-starter-thymeleaf'
    //Voltage
    // Device Detection

    compile group: 'org.springframework.boot', name: 'spring-boot-starter-data-cassandra', version:'2.0.4.RELEASE'  
    compile group: 'com.google.guava', name: 'guava', version: '23.2-jre'
    compile('com.google.code.gson:gson:2.8.0')
    compile('org.json:json:20170516')

    //Swagger
    compile group: 'io.springfox', name: 'springfox-swagger2', version:'2.8.0'
    compile group: 'io.springfox', name: 'springfox-swagger-ui', version:'2.8.0'

    //jkd10 fixes
    compile group: 'javax.xml.bind',name: 'jaxb-api', version:'2.3.0'
    compile group: 'javax.xml.soap', name: 'javax.xml.soap-api', version:'1.3.5'
    compile group: 'com.sun.xml.messaging.saaj', name: 'saaj-impl', version:'1.4.0'
    compile group: 'javax.activation', name: 'activation', version: '1.1.1'
    compile group: 'org.glassfish.jaxb', name: 'jaxb-runtime', version:'2.3.0.1'
    testCompile group: 'net.sourceforge.cobertura', name: 'cobertura', version: '2.1.1'

    //Lombok
    compileOnly group: 'org.projectlombok', name: 'lombok'
    compile group: 'io.smartcat', name: 'cassandra-diagnostics-connector21', version: '1.4.10'
    //Testing
    //Spring  WS Test
    testCompile group: 'org.springframework.ws', name: 'spring-ws-test', version:'2.4.0.RELEASE'

    testCompile('org.springframework.boot:spring-boot-starter-test'){
        exclude group: "com.vaadin.external.google", module:"android-json"
    }
    //Pact
    testCompile group: 'au.com.dius', name: 'pact-jvm-provider-gradle_2.12', version: '3.5.7'
    testCompile group: 'au.com.dius', name:'pact-jvm-provider-junit_2.12',version:'3.5.13'
    testCompile group: 'au.com.dius', name:'pact-jvm-consumer-junit_2.12', version:'3.5.13'

    //Embedded mongo for testing
    testCompile group: 'de.flapdoodle.embed', name:'de.flapdoodle.embed.mongo',version:'2.0.1'
    //testCompile group: 'cz.jirutka.spring', name: 'embedmongo-spring', version: '1.1'

    compile group: 'info.cukes', name: 'cucumber-jvm', version: '1.2.5'
    testCompile group: 'io.cucumber', name: 'cucumber-junit', version: '3.0.2'
    compile group: 'io.cucumber', name: 'cucumber-spring', version: '3.0.2'

    testCompile('org.cassandraunit:cassandra-unit-spring:3.5.0.1'){
        exclude group: 'org.cassandraunit', module: 'cassandra-unit'
    }
    // https://mvnrepository.com/artifact/org.cassandraunit/cassandra-unit-shaded
    compile group: 'org.cassandraunit', name: 'cassandra-unit-shaded', version: '3.5.0.1'
    // https://mvnrepository.com/artifact/org.hectorclient/hector-core
    compile group: 'org.hectorclient', name: 'hector-core', version: '2.0-0'
    compile group: 'org.apache.cassandra', name: 'cassandra-all', version: '3.11.3'
    integrationTestCompile group: 'org.springframework.ws', name: 'spring-ws-test', version:'2.4.0.RELEASE' //changes for integration tests
    integrationTestCompile("org.springframework.boot:spring-boot-starter-test"){ //changes for integration tests
        exclude group: "com.vaadin.external.google", module:"android-json"
    }
    //integrationTestCompile group: 'info.cukes', name: 'cucumber-junit', version: '1.2.5' //changes for integration tests
    //integrationTestCompile group: 'info.cukes', name: 'cucumber-spring', version: '1.2.5' //changes for integration tests

}

dependencyManagement {
    imports {
        mavenBom "org.springframework.cloud:spring-cloud-dependencies:${springCloudVersion}"
    }

}

test {
    //ignoreFailures = true
    reports.junitXml.enabled = false
    reports.html.enabled = true
    testLogging {
        exceptionFormat = 'full'
    }
    jacoco {
        append = false
        destinationFile = file("$buildDir/jacoco/jacocoTest.exec")
        maxHeapSize = '2048m'
        minHeapSize = '1024m'
        //classDumpDir = file("$buildDir/jacoco/classpathdumps")
    }
}
jacocoTestReport {
    group = "Reporting"
    reports {
        xml.enabled true
        csv.enabled false
        html.destination "${buildDir}/reports/coverage"
    }
    afterEvaluate {
        classDirectories = files(classDirectories.files.collect {
            fileTree(dir: it,
                    exclude: [
                                '**/config*',
                                '**/coupons/TextToClipApplication*',
                                '**/bean/*Request*',
                                '**/bean/*Response*',
                    ])
        })
    }
}
test.finalizedBy jacocoTestReport

jacoco {
    toolVersion = "0.8.2"
    reportsDir = file("$buildDir/customJacocoReportDir")
}

task createDockerfile(type: Dockerfile,dependsOn:'unzipVoltageDependencies') {
    println 'createDockerfile'

        println 'createDockerfile'
        //Dockerfile path
        destFile = project.file('Dockerfile')

        //Base Image
        from 'nonprodregistry.azurecr.io/baseimg/zulu-openjdk_10u02_ubuntu18.04:v1'
        //from 'nonprodregistry.azurecr.io/zulu-openjdk:8'

        copyFile 'voltage-dependencies/', '/usr/local/ecomm/voltage-dependencies/'

        //Add Springboot Jar
        addFile '/build/libs/' + project.name + '.jar', '/usr/local/ecomm/app/' + project.name + '.jar'

}

/**
 For Voltage dependencies

* /

springBoot {
    buildInfo {
        properties {
            additional = [
                    'time': buildTime()
            ]
        }
    }
}

def buildTime() {
    final dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ssZ")
    dateFormat.timeZone = TimeZone.getTimeZone('CST')
    dateFormat.format(new Date())
}

sonarqube {
    properties {
        property 'sonar.projectName', 'text2clip'
        property 'sonar.coverage.exclusions', "**/config/*,**/coupons/TextToClipApplication*,**/bean/*,**/collection/*"     
    }
}

//start of changes for integration tests
task apifunctionaltest(type: Test) {
    systemProperty "integrationurl", System.getProperty("integrationurl")
    reports.junitXml.enabled = false
    reports.html.enabled = true
    testLogging {
        exceptionFormat = 'full'
    }
    testClassesDirs = sourceSets.integrationTest.output.classesDirs
    classpath = sourceSets.integrationTest.runtimeClasspath
    outputs.upToDateWhen { false }
    reports.html.destination = file("${reporting.baseDir}/${name}")
}

//集成测试更改结束
任何人在jdk10升级之前或升级过程中都遇到过这个问题。
我尝试了不同的版本,但没有帮助。看起来有版本冲突,但找不到。
感谢您的帮助。

xlpyo6sf

xlpyo6sf1#

当前的cassandra版本与jdk10不兼容。您必须将java降级到jdk8。

vngu2lb8

vngu2lb82#

https://github.com/nosan/embedded-cassandra
可以在初始化期间设置java home。

相关问题