2012-08-14 112 views
10

我正在尝试使用IntelliJ(v11.1.3)创建一个简单的Java webapp并将其与一个简单的maven pom文件集成以下载Vaadin jar。IntelliJ和Maven源文件夹问题

这里是我的POM文件:

<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> 

<groupId>com.a.maven.project</groupId> 
<artifactId>MavenProject</artifactId> 
<version>0.1</version> 
<packaging>war</packaging> 

<dependencies> 
<dependency> 
    <groupId>com.vaadin</groupId> 
    <artifactId>vaadin</artifactId> 
    <version>6.8.2</version> 
</dependency> 

</project> 

我出从版本控制,以将其设置在检查的IntelliJ这个项目。但是,IntelliJ似乎无法识别“src”文件夹是源文件夹。我可以手动将其设置为项目设置中的sources文件夹,这是一个小问题,但不是什么大问题。但是,每次我对pom文件进行更改时,IntelliJ都会“忘记”这是源文件夹,然后我所有的Java文件都会在它们周围出现红圈。有没有人有任何想法可能会导致这种情况?我已经尝试了一切来解决这个问题,包括在我的pom文件中指定源文件夹,但似乎没有任何工作。

由于提前,

埃里克

+0

什么是从项目根源目录的完整路径?根据Maven约定,它应该是'/ src/main/java'。 IDEA会自动将此目录配置为** Sources **,另请参阅http://wiki.jetbrains.net/intellij/Maven_FAQ。 – CrazyCoder 2012-08-14 05:58:47

+0

谢谢你的链接!根据维基,这样做的不正确的方式是这样的: src ---但是,我补充说,现在它完美的作品。我猜测我以IntelliJ不喜欢的方式创建了我的存储库。 – user1597121 2012-08-14 06:34:56

+0

@ user1597121:仔细阅读。维基并没有说你的代码是不正确的,但相反。 – 2012-08-18 19:25:07

回答

14

IntelliJ IDEA的如下Maven conventions,并会自动配置/src/main/java来源根。

如果您使用的是非标准目录的来源,检查IDEA Maven FAQ的解决方法:

<sourceDirectory>...</sourceDirectory> will be added as Source folder 
+0

是的,由于某些原因,当我在IntelliJ中创建项目时,默认情况下没有以这种方式配置它。我现在已经把这一切理顺了。谢谢! – user1597121 2012-08-19 03:19:26

+0

bah你是一个救生员 - 我继承了一个正在做这件事的项目,它正在驱动我batty ......原来在pom中有一个sourcedirectory标签。“< – 2014-11-07 00:34:21

6

它发生在我的理念11一切正常,但消息人士没有得到承认。我打开该项目作为maven - 从parrent pom - 选择删除现有的想法文件并生成新的。 它的工作。

+1

这也发生在Idea 12上,'mvn clean install '工作完美,但intellij认为源代码开始于'src'而不是'src/main/java'。只要做'文件>打开',并​​选择你的根源。xml,然后选择'删除现有项目并导入'=>固定 – MikeR 2014-01-29 12:14:53

+0

在Idea 12上为我工作! – nicojs 2014-03-13 14:34:54

0

如果你不能够让Java目录 - > '的src/main/java' 设置为源根:

  • 里面创建的src/main
  • 招一个新的文件夹 “java1” 所有文件夹和文件java文件夹里面java1
  • 右击java1>标记目录>源根
  • 删除java文件夹
  • 命名java1 - > Java的