代码之家  ›  专栏  ›  技术社区  ›  Pratik K. Shah

基于模式的逆向工程中的ScalikejdbcGen ClassNotFoundException异常

  •  0
  • Pratik K. Shah  · 技术社区  · 5 年前

    我遵循此文档 ScalikeJDBCGen ,它可以从生成源代码 MySQL 模式。然而,在执行以下命令时,我收到 ClassNotFound异常 .

    我可以在sbt依赖项中看到MySql。此外,我试图通过将其从依赖关系中删除来运行此程序,但怀疑同一依赖关系的两个版本存在冲突(见下图)。但结果保持不变。我该怎么解决这个问题?

    enter image description here

    终点站

    sbt "scalikejdbcGen product Product"
    

    错误

    [error] java.lang.ClassNotFoundException: com.mysql.jdbc.Driver
    [error]         at java.base/java.net.URLClassLoader.findClass(URLClassLoader.java:435)
    [error]         at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:589)
    [error]         at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:522)
    [error]         at java.base/java.lang.Class.forName0(Native Method)
    [error]         at java.base/java.lang.Class.forName(Class.java:340)
    [error]         at scalikejdbc.mapper.ScalikejdbcPlugin$.generator(ScalikejdbcPlugin.scala:196)
    [error]         at scalikejdbc.mapper.ScalikejdbcPlugin$.$anonfun$projectSettings$2(ScalikejdbcPlugin.scala:237)
    [error]         at scalikejdbc.mapper.ScalikejdbcPlugin$.$anonfun$projectSettings$7(ScalikejdbcPlugin.scala:249)
    [error]         at scalikejdbc.mapper.ScalikejdbcPlugin$.$anonfun$projectSettings$7$adapted(ScalikejdbcPlugin.scala:247)
    [error]         at scala.Function1.$anonfun$compose$1(Function1.scala:44)
    [error]         at sbt.internal.util.$tilde$greater.$anonfun$$u2219$1(TypeFunctions.scala:40)
    [error]         at sbt.std.Transform$$anon$4.work(System.scala:67)
    [error]         at sbt.Execute.$anonfun$submit$2(Execute.scala:269)
    [error]         at sbt.internal.util.ErrorHandling$.wideConvert(ErrorHandling.scala:16)
    [error]         at sbt.Execute.work(Execute.scala:278)
    [error]         at sbt.Execute.$anonfun$submit$1(Execute.scala:269)
    [error]         at sbt.ConcurrentRestrictions$$anon$4.$anonfun$submitValid$1(ConcurrentRestrictions.scala:178)
    [error]         at sbt.CompletionService$$anon$2.call(CompletionService.scala:37)
    [error]         at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
    [error]         at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515)
    [error]         at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
    [error]         at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130)
    [error]         at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:630)
    [error]         at java.base/java.lang.Thread.run(Thread.java:832)
    [error] (databaseMysql / Compile / scalikejdbcGen) java.lang.ClassNotFoundException: com.mysql.jdbc.Driver
    

    Build.sbt

    lazy val databaseMysql =
      (project in file("database-mysql"))
        .enablePlugins(ScalikejdbcPlugin)
        .settings(
          commonSettings,
          libraryDependencies ++= Seq(
            logback,
            slf4j,
            "mysql" % "mysql-connector-java" % "5.1.12",
            "org.hsqldb" % "hsqldb" % "2.3.2",
            "org.scalikejdbc" %% "scalikejdbc"       % "3.5.0",
            "org.scalikejdbc" %% "scalikejdbc-test"   % "3.5.0"   % "test",
            "org.scalikejdbc" %% "scalikejdbc-config"  % "3.5.0",
            "com.h2database"  %  "h2"                % "1.4.200",
            "ch.qos.logback"  %  "logback-classic"   % "1.2.3",
            "org.scalikejdbc" %% "scalikejdbc-mapper-generator-core" % "3.5.0"
          )
        )
        .dependsOn(util, signrequest, test % "test->test;compile->compile")
    
    0 回复  |  直到 5 年前
        1
  •  0
  •   Kazuhiro Sera    5 年前

    将JDBC驱动程序添加到 project/plugins.sbt 应该为你工作!

    推荐文章