#java #scala #visual-studio-code #xgboost #scala-metals
#Ява #scala #visual-studio-код #xgboost #scala-металлы
Вопрос:
Я новичок в Scala и XGBoost. Я получил проект Gradle Scala от коллеги, который работает в производстве, и я пытаюсь запустить его на своей машине. Когда я пытаюсь запустить, появляется эта ошибка:
Exception in thread "main" java.lang.NoClassDefFoundError: scala/Serializable (...) Caused by: java.lang.ClassNotFoundException: scala.Serializable
Я относительно новичок в Scala, но разбираюсь в Java, но не могу найти хорошего ответа на эту ошибку в Интернете.
Эта ошибка возникает только в том случае, если задействованы библиотеки XGBoost, в противном случае проект работает нормально.
Я также должен упомянуть, что я получаю это сообщение при запуске из кода Visual Studio с использованием Metals:
2021.12.03 18:11:49 INFO no build target: using presentation compiler with only scala-library: 2.13.5
Настройки градуировки:
apply plugin: 'scala' apply plugin: 'java' apply plugin: 'idea' idea { module { inheritOutputDirs = true downloadJavadoc = false downloadSources = false } } sourceCompatibility = 1.11 targetCompatibility = 1.11 def scalaVersion = '2.13.5' def scalaRelease = scalaVersion.split('\.').take(2).join('.') repositories { mavenCentral() maven {url "https://repository.cloudera.com/artifactory/cloudera-repos/"} } //def deploy = 'desm' def deploy = 'prod' dependencies { if (deploy == 'prod') { compileOnly "org.scala-lang:scala-library:$scalaVersion" compileOnly group: 'com.fasterxml.jackson.core', name: 'jackson-databind', version: '2.11.2' compileOnly group: 'com.fasterxml.jackson.module', name: "jackson-module-scala_$scalaRelease", version: '2.11.2' compileOnly group: 'org.apache.hbase', name: 'hbase-client', version: '2.1.0-cdh6.3.3' compileOnly group: 'org.apache.kafka', name: 'kafka-clients', version: '2.2.1-cdh6.3.3' }else if (deploy == 'desm'){ compile "org.scala-lang:scala-library:$scalaVersion" compile group: 'com.fasterxml.jackson.core', name: 'jackson-databind', version: '2.11.2' compile group: 'com.fasterxml.jackson.module', name: "jackson-module-scala_$scalaRelease", version: '2.11.2' compile group: 'org.apache.hbase', name: 'hbase-client', version: '2.1.0-cdh6.3.3' compile group: 'org.apache.kafka', name: 'kafka-clients', version: '2.2.1-cdh6.3.3' } compile group: 'ml.dmlc', name: 'xgboost4j', version: '0.72', { exclude group: 'com.typesafe.akka', module: 'akka-actor_2.11' exclude group: 'com.typesafe.akka', module: 'akka-testkit_2.11' exclude group: 'junit', module: 'junit' exclude group: 'org.scala-lang', module: 'scala-compiler' exclude group: 'org.scala-lang', module: 'scala-reflect' exclude group: 'org.scala-lang', module: 'scala-library' exclude group: 'org.scalatest', module: 'scalatest_2.11' } }
Совместное предприятие: 11.0.13
XGBoost: 0.72 (это старая версия, я знаю)
Scala: 2.13.5
Комментарии:
1. В сообщении об ошибке указано , что вы используете
scala-library: 2.13.5
, попробуйте его и перестроите проект.