Exposed icon indicating copy to clipboard operation
Exposed copied to clipboard

java.lang.NoSuchMethodError: 'org.jetbrains.exposed.sql.Database org.jetbrains.exposed.sql.Database$Companion.connect$default'

Open stvnkr opened this issue 4 years ago • 7 comments

I don't know why this happens.

Usage in a Spigot plugin.

My Code:

Database.connect("jdbc:mysql://.../...", "com.mysql.jdbc.Driver", "...", "...")

The Exception:

java.lang.NoSuchMethodError: 'org.jetbrains.exposed.sql.Database org.jetbrains.exposed.sql.Database$Companion.connect$default(org.jetbrains.exposed.sql.Database$Companion, java.lang.String, java.lang.String, java.lang.String, java.lang.String, kotlin.jvm.functions.Function1, kotlin.jvm.functions.Function1, int, java.lang.Object)'
        at dev.krahforst.project.Project.onEnable(Project.kt:97) ~[project.jar:?]
        at org.bukkit.plugin.java.JavaPlugin.setEnabled(JavaPlugin.java:264) ~[paper-api-1.18-R0.1-SNAPSHOT.jar:?]
        at org.bukkit.plugin.java.JavaPluginLoader.enablePlugin(JavaPluginLoader.java:370) ~[paper-api-1.18-R0.1-SNAPSHOT.jar:?]
        at org.bukkit.plugin.SimplePluginManager.enablePlugin(SimplePluginManager.java:500) ~[paper-api-1.18-R0.1-SNAPSHOT.jar:?]
        at org.bukkit.craftbukkit.v1_18_R1.CraftServer.enablePlugin(CraftServer.java:563) ~[paper-1.18.jar:git-Paper-35]
        at org.bukkit.craftbukkit.v1_18_R1.CraftServer.enablePlugins(CraftServer.java:477) ~[paper-1.18.jar:git-Paper-35]
        at org.bukkit.craftbukkit.v1_18_R1.CraftServer.reload(CraftServer.java:1014) ~[paper-1.18.jar:git-Paper-35]
        at org.bukkit.Bukkit.reload(Bukkit.java:814) ~[paper-api-1.18-R0.1-SNAPSHOT.jar:?]
        at org.bukkit.command.defaults.ReloadCommand.execute(ReloadCommand.java:54) ~[paper-api-1.18-R0.1-SNAPSHOT.jar:?]
        at org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:159) ~[paper-api-1.18-R0.1-SNAPSHOT.jar:?]
        at org.bukkit.craftbukkit.v1_18_R1.CraftServer.dispatchCommand(CraftServer.java:876) ~[paper-1.18.jar:git-Paper-35]
        at org.bukkit.craftbukkit.v1_18_R1.CraftServer.dispatchServerCommand(CraftServer.java:839) ~[paper-1.18.jar:git-Paper-35]
        at net.minecraft.server.dedicated.DedicatedServer.handleConsoleInputs(DedicatedServer.java:507) ~[paper-1.18.jar:git-Paper-35]
        at net.minecraft.server.dedicated.DedicatedServer.tickChildren(DedicatedServer.java:481) ~[paper-1.18.jar:git-Paper-35]
        at net.minecraft.server.MinecraftServer.tickServer(MinecraftServer.java:1470) ~[paper-1.18.jar:git-Paper-35]
        at net.minecraft.server.MinecraftServer.runServer(MinecraftServer.java:1264) ~[paper-1.18.jar:git-Paper-35]
        at net.minecraft.server.MinecraftServer.lambda$spin$0(MinecraftServer.java:317) ~[paper-1.18.jar:git-Paper-35]
        at java.lang.Thread.run(Thread.java:833) ~[?:?]

My pom.xml

<?xml version="1.0" encoding="UTF-8"?>
<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">

   <modelVersion>4.0.0</modelVersion>
   <packaging>pom</packaging>

   <name>Project</name>
   <groupId>dev.krahforst</groupId>
   <artifactId>project</artifactId>
   <version>1.0.0</version>

   <properties>
       <kotlin.version>1.6.0</kotlin.version>
       <maven.compiler.source>16</maven.compiler.source>
       <maven.compiler.target>16</maven.compiler.target>
       <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
   </properties>

   <build>
       <sourceDirectory>${project.basedir}/src/main/kotlin</sourceDirectory>
       <resources>
           <resource>
               <directory>${project.basedir}/src/main/resources</directory>
               <filtering>false</filtering>
               <includes>
                   <include>plugin.yml</include>
               </includes>
           </resource>
       </resources>
       <plugins>
           <plugin>
               <groupId>org.jetbrains.kotlin</groupId>
               <artifactId>kotlin-maven-plugin</artifactId>
               <version>${kotlin.version}</version>
               <executions>
                   <execution>
                       <id>compile</id>
                       <phase>process-sources</phase>
                       <goals>
                           <goal>compile</goal>
                       </goals>
                       <configuration>
                           <sourceDirs>
                               <sourceDir>${project.basedir}/src/main/kotlin</sourceDir>
                               <sourceDir>${project.basedir}/src/main/java</sourceDir>
                           </sourceDirs>
                       </configuration>
                   </execution>
               </executions>
           </plugin>
           <plugin>
               <groupId>org.apache.maven.plugins</groupId>
               <artifactId>maven-compiler-plugin</artifactId>
               <version>3.5.1</version>
               <executions>
                   <execution>
                       <id>default-compile</id>
                       <phase>none</phase>
                   </execution>
                   <execution>
                       <id>java-compile</id>
                       <phase>compile</phase>
                       <goals>
                           <goal>compile</goal>
                       </goals>
                   </execution>
               </executions>
           </plugin>
           <plugin>
               <groupId>org.apache.maven.plugins</groupId>
               <artifactId>maven-shade-plugin</artifactId>
               <version>3.0.0</version>
               <executions>
                   <execution>
                       <phase>package</phase>
                       <goals>
                           <goal>shade</goal>
                       </goals>
                   </execution>
               </executions>
           </plugin>
       </plugins>
   </build>

   <repositories>
       <repository>
           <id>jitpack.io</id>
           <url>https://jitpack.io</url>
       </repository>
       <repository>
           <id>enginehub-maven</id>
           <url>https://maven.enginehub.org/repo/</url>
       </repository>
       <repository>
           <id>public</id>
           <url>https://repo.songoda.com/repository/public/</url>
       </repository>
   </repositories>

   <dependencies>

       <dependency>
           <groupId>org.jetbrains.kotlin</groupId>
           <artifactId>kotlin-stdlib</artifactId>
           <version>${kotlin.version}</version>
           <scope>compile</scope>
       </dependency>
       <dependency>
           <groupId>org.jetbrains.kotlin</groupId>
           <artifactId>kotlin-reflect</artifactId>
           <version>1.6.0</version>
           <scope>runtime</scope>
       </dependency>
       <dependency>
           <groupId>org.jetbrains.exposed</groupId>
           <artifactId>exposed</artifactId>
           <version>0.17.14</version>
           <scope>compile</scope>
       </dependency>
       <dependency>
           <groupId>org.jetbrains.exposed</groupId>
           <artifactId>exposed-jdbc</artifactId>
           <version>0.36.2</version>
           <scope>compile</scope>
       </dependency>

       <dependency>
           <groupId>mysql</groupId>
           <artifactId>mysql-connector-java</artifactId>
           <version>8.0.27</version>
           <scope>compile</scope>
       </dependency>

       <dependency>
           <groupId>com.moandjiezana.toml</groupId>
           <artifactId>toml4j</artifactId>
           <version>0.7.2</version>
           <scope>compile</scope>
       </dependency>
       <dependency>
           <groupId>io.sentry</groupId>
           <artifactId>sentry</artifactId>
           <version>5.4.0</version>
           <scope>compile</scope>
       </dependency>

       <dependency>
           <groupId>org.reflections</groupId>
           <artifactId>reflections</artifactId>
           <version>0.10.2</version>
           <scope>compile</scope>
       </dependency>

       <dependency>
           <groupId>org.javassist</groupId>
           <artifactId>javassist</artifactId>
           <version>3.28.0-GA</version>
       </dependency>
       <dependency>
           <groupId>cglib</groupId>
           <artifactId>cglib</artifactId>
           <version>3.3.0</version>
           <scope>compile</scope>
       </dependency>

       <dependency>
           <groupId>org.zeroturnaround</groupId>
           <artifactId>zt-zip</artifactId>
           <version>1.14</version>
           <type>jar</type>
           <scope>compile</scope>
       </dependency>
       <dependency>
           <groupId>commons-io</groupId>
           <artifactId>commons-io</artifactId>
           <version>20030203.000550</version>
           <scope>compile</scope>
       </dependency>

   </dependencies>

</project>

stvnkr avatar Dec 04 '21 18:12 stvnkr

@StevenKrahforst you have mix of two different Exposed versions in your code:

       <dependency>
           <groupId>org.jetbrains.exposed</groupId>
           <artifactId>exposed</artifactId>
           <version>0.17.14</version>
           <scope>compile</scope>
       </dependency>
       <dependency>
           <groupId>org.jetbrains.exposed</groupId>
           <artifactId>exposed-jdbc</artifactId>
           <version>0.36.2</version>
           <scope>compile</scope>
       </dependency>

Please check https://github.com/JetBrains/Exposed/wiki/Getting-Started#maven

Tapac avatar Dec 29 '21 10:12 Tapac

I have the similar issue: изображение

My build.gradle.kts:

dependencies {
    implementation("com.microsoft.sqlserver:mssql-jdbc:9.4.1.jre11")

    implementation("org.jetbrains.exposed:exposed-core:0.37.3")
    implementation("org.jetbrains.exposed:exposed-dao:0.37.3")
    implementation("org.jetbrains.exposed:exposed-jdbc:0.37.3")
}

maxtar avatar Jan 19 '22 14:01 maxtar

@maxtar please show the whole code block

Tapac avatar Jan 19 '22 14:01 Tapac

@Tapac изображение

maxtar avatar Jan 19 '22 15:01 maxtar

@Tapac sorry. My mistake. config.db.password not a string. It's ok. Work for me.

maxtar avatar Jan 19 '22 15:01 maxtar

Hello

I have the same issue. It happened when I moved into the latest version of the exposed BOM

    implementation(platform("org.jetbrains.exposed:exposed-bom:0.37.3"))
    implementation("org.jetbrains.exposed:exposed-core")
    implementation("org.jetbrains.exposed:exposed-dao")
    implementation("org.jetbrains.exposed:exposed-jdbc")
    implementation("org.jetbrains.exposed:exposed-spring-boot-starter")
    implementation("org.jetbrains.exposed:exposed-java-time")

buzoherbert avatar Mar 30 '22 10:03 buzoherbert

@buzoherbert , can you show the part of the code from the IDE where it's happen?

Tapac avatar Apr 10 '22 11:04 Tapac

Please reopen this issue if the problem persists with current version 0.41.1.

If it does and if possible, please confirm build details and IDE version, as well as a code sample that produces the error.

bog-walk avatar May 03 '23 10:05 bog-walk