Eclipse src/main/java和Springsource工具中的src有什么区别

Eclipse src/main/java和Springsource工具中的src有什么区别,eclipse,sts-springsourcetoolsuite,Eclipse,Sts Springsourcetoolsuite,我正在学习使用Springsource工具套件(STS)和Spring开发框架。我正在试用AmazonAWSSDKforEclipse,并决定将其安装到STS中。当我创建一个新的AWS项目时,它将.java文件放在src下,而不是src/main/java下,当我尝试构建它时,它说 “没有主管道” 或者类似的 但是,当我将AwsConsoleApp.java和AwsCredentials.properties移动到src/main/java(默认包)时,我可以将该文件作为java应用程序运行 我

我正在学习使用Springsource工具套件(STS)和Spring开发框架。我正在试用AmazonAWSSDKforEclipse,并决定将其安装到STS中。当我创建一个新的AWS项目时,它将.java文件放在src下,而不是src/main/java下,当我尝试构建它时,它说

“没有主管道” 或者类似的

但是,当我将AwsConsoleApp.java和AwsCredentials.properties移动到src/main/java(默认包)时,我可以将该文件作为java应用程序运行

我的问题是,
src/main/java
->default包和src->main有什么区别。我附上了一张图片来澄清问题:

回答:

Eclipse中的每个Java项目(以及STS)都有相关的构建路径,在其中指定,项目中的哪些文件夹包含Java类。因此,
src/
src/main/java
之间的区别在于,
src/main/java
被配置为一个文件夹,其中包含java类(或Eclipse术语中的源文件夹),而
src/
文件夹只包含源文件夹

有关更多信息,请参阅

我不确定是什么导致您的Java类最终出现在错误的文件夹中,但这意味着它们不在项目的类路径中。因此,当您将应用程序作为Java应用程序运行时,它会抱怨找不到
main()
方法(这是任何Java应用程序的默认入口点)


当您将类移动到
src/main/java
中的默认包下时,一切都准备就绪:Eclipse会找到您的java类和
main()
方法

谁能告诉我我们什么时候创建一个新的Maven项目,src/main/java和src/test/java得到创建。基本上,在准备webdriver自动化脚本时,我们将所有测试用例和java文件添加到src/test/java文件夹中。我们为什么这么做?@Nilanjan这是Maven关于如何组织项目以便于管理的建议。将在生产中部署或由其他模块使用的所有内容通常都放在src/main/java中。为这个模块编写的所有测试都将放在src/test/java中。当Maven编译时,它将工件从两个文件夹中分离出来,并仅在必要时将它们合并。例如,如果在另一个模块中使用该模块,则只会得到src/main/java。运行测试时,类路径将组合为src/main/java和src/test/java。