java

关注公众号 jb51net

关闭
首页 > 软件编程 > java > idea导入项目后main方法无法Run

idea中导入项目后main方法无法Run的解决

作者:lvhui321

这篇文章主要介绍了idea中导入项目后main方法无法Run的解决方案,具有很好的参考价值,希望对大家有所帮助。

idea导入项目后main方法无法Run

1.问题

如截图所示,红色框处并未出现run按钮,无法运行

2.解决办法

调试run按钮

2.1)如图所示

进行如下两步操作,先点击自己的项目,再点击Open Module Settings

2.2点击Sources

别忘了点击右下角的Apply或OK

2.3就这样Run按钮就调试出来了

idea导入项目各种报错问题

问题一

[ERROR] scalac error: E:\spark\spark-rdd-源码\spark-rdd\target\classes does not exist or is not a directory
[INFO]   scalac -help  gives more information
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 15.488 s
[INFO] Finished at: 2019-01-05T21:03:33+08:00
[INFO] Final Memory: 58M/598M
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal net.alchim31.maven:scala-maven-plugin:3.1.6:compile (default) on project spark-rdd: wrap: org.apache.commons.exec.ExecuteException: Process exited with an error: 1 (Exit value: 1) -> [Help 1]
[ERROR] 
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR] 
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MojoExecutionException

如果是报上面的错误的话,你可以找到关键的ERROR日志如下:

[ERROR] scalac error: E:\spark\spark-rdd-源码\spark-rdd\target\classes does not exist or is not a directory

可以看出,你的spark-rdd的项目的文件路径中带有中文,这个是不允许的,所以你的项目所在的文件的路径中最好不要带有中文

问题二

报上面的错是因为你的pom.xml中没有设置上groupId和version两个属性,在pom.xml中加上这两个属性即可,如下:

	<groupId>com.jrq</groupId>
    <artifactId>spark-rdd</artifactId>
    <version>1.0-SNAPSHOT</version>

然后点击右下角的Import Changes,这个时候如果有依赖的jar报没有下载下来的话,IDEA会去下载依赖jar包(这里需要等一段时间),一段时间后,pom.xml中就没有任何的报错(没有了红色提示线)

groupId:项目组织唯一的标识符,实际对应JAVA的包的结构 artifactId:就是项目的唯一的标识符,实际对应项目的名称,就是项目根目录的名称

groupid和artifactId被统称为“坐标”是为了保证项目唯一性而提出的,如果你要把你项目弄到maven本地仓库去,你想要找到你的项目就必须根据这两个id去查找。

groupId一般分为多个段,这里我只说两段,第一段为域,第二段为公司名称。域又分为org、com、cn等等许多,其中org为非营利组织,com为商业组织。举个apache公司的tomcat项目例子:这个项目的groupId是org.apache,它的域是org(因为tomcat是非营利项目),公司名称是apache,artigactId是tomcat。

比如我创建一个项目,我一般会将groupId设置为com.jrq,com表示域为商业组织,jrq是我个人姓名缩写,artifactId设置为testProj,表示你这个项目的名称是testProj,依照这个设置,你的包结构最好是com.jrq打头的,如果有个StudentDao,它的全路径就是com.jrq.dao.StudentDao

问题三

error: source file ‘E:\spark\spark-rdd\spark-rdd\src\main\java\com\jrq\spark\rdd\ ?.java’ could not be found

其实是出现了乱码问题了,建议你直接将项目中的 中文字.java这个文件删掉即可

问题四

解决方法是:maven clean -> maven compile

问题五

文件下有相同文件,改名

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

您可能感兴趣的文章:
阅读全文