CN-GuoZiyang/MYDB

您好,请问我在创建数据库的时候为什么会找不到Lancher类呀

Opened this issue · 12 comments

[INFO]
[INFO] --- exec-maven-plugin:3.1.0:java (default-cli) @ MyDB ---
[WARNING]
java.lang.ClassNotFoundException: "top.guoziyang.mydb.backend.Launcher"
at org.codehaus.mojo.exec.URLClassLoaderBuilder$ExecJavaClassLoader.loadClass (URLClassLoaderBuilder.java:198)
at java.lang.ClassLoader.loadClass (ClassLoader.java:521)
at org.codehaus.mojo.exec.ExecJavaMojo$1.run (ExecJavaMojo.java:271)
at java.lang.Thread.run (Thread.java:834)

电脑是m1版本的mac

您好,我也同样遇到此问题。电脑为win11,把项目引入IDEA之后,且Java版本为jdk-17,如下图所示:
image

能顺利执行mvn compile,如下图所示:
image

但当我执行mvn exec:java -Dexec.mainClass="top.guoziyang.mydb.backend.Launcher" -Dexec.args="-create /tmp/mydb",出现如下图所示的问题:

图片1:
image

图片2:
image

图片3:
image

根据图片1图中所给的链接[ERROR] [Help 1]:http://cwiki.apache.org/confluence/display/MAVEN/MojoExecutionException

image

页面提示说是异常出现的问题在于插件,到这里我就不知道怎么继续下去,希望能够得到提示,谢谢!

我看了看其他的issue,尝试使用mvn install,会出现如下图所示的问题:

图片1:
image

图片2:
image

图片3:
image

图片4:
image

根据图片1中所给的链接[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/PluginExecutionException

image

到这里,我就没有方向去寻找下一个解决方案,希望能够得到提示,谢谢!

您好,我也遇到这个问题。电脑为win11,把项目导入IDEA后,且Java版本为jdk-17,如下图所示: 图像

能顺利执行mvn编译,如下图所示: 图像

但是当我执行mvn exec:java -Dexec.mainClass="top.guoziyang.mydb.backend.Launcher" -Dexec.args="-create /tmp/mydb"时,出现如下图所示的问题:

图片1: 图像

图片2: 图像

图片3: 图像

根据图片1描绘所给的链接[ERROR] [帮助1]:http://cwiki.apache.org/confluence/display/MAVEN/MojoExecutionException

图像 页面提示说是异常出现的问题存在插件,到这里我不知道怎么继续下去,希望能够得到提示,谢谢!

我查看了其他的问题,尝试使用 mvn install,会出现如下图所示的问题:

图片1: 图像

图片2: 图像

图片3: 图像

图片4: 图像

根据图片1中所给的链接[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/PluginExecutionException

图像 到这里,我就没有方向去寻找下一个解决方案,希望能够得到提示,谢谢!

mvn exec:java -D"exec.mainClass"="top.guoziyang.mydb.backend.Launcher" -D"exec.args"="-create C:\temp\mydb"
使用这个命令应该是可以成功的 事先需要再C盘创建对应的文件夹就可以了,我也是遇到了这个问题的
image

电脑是m1版本的mac

你可以看一下我上面的回复,应该是可以解决的喵

exec:java -D"exec.mainClass"="top.guoziyang.mydb.backend.Launcher" -D"exec.args"="-create C:\temp\mydb"

您好,用这个方法之后报错“The parameters 'mainClass' for goal org.codehaus.mojo:exec-maven-plugin:3.2.0:java are missing or invalid”,想问一下这是为什么?
20240424020936

mvn exec:java -D"exec.mainClass"="top.guoziyang.mydb.backend.Launcher" -D"exec.args"="-create C:\temp\mydb"

对对对 我电脑win11解决了

同样的问题已解决

jyafoo commented

mvn exec:java -D"exec.mainClass"="top.guoziyang.mydb.backend.Launcher" -D"exec.args"="-create C:\temp\mydb"

对对对 我电脑win11解决了

请问我第四步执行mvn exec:java -D"exec.mainClass"="top.guoziyang.mydb.backend.Launcher"的时候成功了但没有弹出窗口知道是什么原因吗,求解答
image

jyafoo commented

同样的问题已解决

请问我第四步执行mvn exec:java -D"exec.mainClass"="top.guoziyang.mydb.backend.Launcher"的时候成功了但没有弹出窗口知道是什么原因吗,求解答
image

jyafoo commented

电脑是m1版本的mac

你可以看一下我上面的回复,应该是可以解决的喵

请问我第四步执行mvn exec:java -D"exec.mainClass"="top.guoziyang.mydb.backend.Launcher"的时候成功了但没有弹出窗口知道是什么原因吗,求解答
image

@jyafoo

同样的问题已解决

请问我第四步执行mvn exec:java -D"exec.mainClass"="top.guoziyang.mydb.backend.Launcher"的时候成功了但没有弹出窗口知道是什么原因吗,求解答 image

我这边按照如下方式编译运行可用:

运行方式

注意首先需要在 pom.xml 中调整编译版本,如果导入 IDE,请更改项目的编译版本以适应你的 JDK

首先执行以下命令编译源码:

mvn compile

接着执行以下命令以 /temp/mydb 作为路径创建数据库:

mvn exec:java -D"exec".mainClass="top.guoziyang.mydb.backend.Launcher" -D"exec".args="-create C:\temp\mydb"

随后通过以下命令以默认参数启动数据库服务:

mvn exec:java -D"exec".mainClass="top.guoziyang.mydb.backend.Launcher" -D"exec".args="-open C:\temp\mydb"

这时数据库服务就已经启动在本机的 9999 端口。重新启动一个终端,执行以下命令启动客户端连接数据库:

mvn exec:java -D"exec".mainClass="top.guoziyang.mydb.client.Launcher"

会启动一个交互式命令行,就可以在这里输入类 SQL 语法,回车会发送语句到服务,并输出执行的结果。

一个执行示例:

jyafoo commented

@jyafoo

同样的问题已解决

请问我第四步执行mvn exec:java -D"exec.mainClass"="top.guoziyang.mydb.backend.Launcher"的时候成功了但没有弹出窗口知道是什么原因吗,求解答 image

我这边按照如下方式编译运行可用:

运行方式

注意首先需要在 pom.xml 中调整编译版本,如果导入 IDE,请更改项目的编译版本以适应你的 JDK

首先执行以下命令编译源码:

mvn compile

接着执行以下命令以 /temp/mydb 作为路径创建数据库:

mvn exec:java -D"exec".mainClass="top.guoziyang.mydb.backend.Launcher" -D"exec".args="-create C:\temp\mydb"

随后通过以下命令以默认参数启动数据库服务:

mvn exec:java -D"exec".mainClass="top.guoziyang.mydb.backend.Launcher" -D"exec".args="-open C:\temp\mydb"

这时数据库服务就已经启动在本机的 9999 端口。重新启动一个终端,执行以下命令启动客户端连接数据库:

mvn exec:java -D"exec".mainClass="top.guoziyang.mydb.client.Launcher"

会启动一个交互式命令行,就可以在这里输入类 SQL 语法,回车会发送语句到服务,并输出执行的结果。

一个执行示例:

已解决,非常感谢!!!