2010-10-20 72 views
7

它不发生的事情,但有时我觉得像这样的东西:为什么行家复制颠覆目录为目标

>dir /SF target\.svn 
…\target\Zeiterfassung-web\WEB-INF\.svn\. 
…\target\Zeiterfassung-web\WEB-INF\.svn\.. 
…\target\Zeiterfassung-web\WEB-INF\.svn\lock 

这怎么可能发生的Maven作为应该忽略默认.svn目录?

我可以明确排除它们吗(注意WEB-INF--它既不是源也不是资源)?

还是可以将血腥的.svn数据放在别的地方与工作文件分开(像clearcase那样)?


的POM的要求(负SCM和问题管理):

<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/maven-v4_0_0.xsd' 
> 
<!-- Projekt - - - - - - - - - - - - - - - - - - - - - - - - {{{1 - - - --> 
    <modelVersion>4.0.0</modelVersion> 
    <parent> 
    <artifactId>Zeiterfassung</artifactId> 
    <groupId>com.noser</groupId> 
    <version>1.0-SNAPSHOT</version> 
    <relativePath>../Zeiterfassung</relativePath> 
    </parent> 
    <groupId>com.noser</groupId> 
    <artifactId>Zeiterfassung-web</artifactId> 
    <packaging>war</packaging> 
    <version>1.0-SNAPSHOT</version> 
    <name>Zeiterfassung Webapp</name> 
    <description>Mobile Applikation Zeiterfassung — Web Archive/Application</description> 
    <url>http://maven.apache.org</url> 
    <repositories> 
    <repository> 
     <id>java.net2</id> 
     <name>Repository hosting the jee6 artifacts</name> 
     <url>http://download.java.net/maven/2</url> 
    </repository> 
    </repositories> 
    <dependencies> 
    <dependency> 
     <groupId>${project.groupId}</groupId> 
     <artifactId>Zeiterfassung-lib</artifactId> 
     <version>${project.version}</version> 
    </dependency> 
    <dependency> 
     <groupId>javax</groupId> 
     <artifactId>javaee-web-api</artifactId> 
     <scope>provided</scope> 
    </dependency> 
    <dependency> 
     <groupId>junit</groupId> 
     <artifactId>junit</artifactId> 
     <scope>test</scope> 
    </dependency> 
    <dependency> 
     <groupId>org.scala-lang</groupId> 
     <artifactId>scala-library</artifactId> 
     <version>2.8.0</version> 
     <type>jar</type> 
     <scope>compile</scope> 
    </dependency> 
    </dependencies> 
    <organization> 
    <name>Noser Engineering AG</name> 
    <url>http://www.noser.com</url> 
    </organization> 
<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - }}}1 - - - --> 
<!-- Build - - - - - - - - - - - - - - - - - - - - - - - - - {{{1 - - - --> 
    <build> 
    <defaultGoal>package</defaultGoal> 
    <resources> 
     <resource> 
     <directory>src/main/resources</directory> 
     <excludes> 
      <exclude>**/.backups/*</exclude> 
      <exclude>**/.backups</exclude> 
      <exclude>**/.svn/*</exclude> 
      <exclude>**/.svn</exclude> 
     </excludes> 
     </resource> 
    </resources> 
    <plugins> 
     <plugin> 
     <groupId>org.scala-tools</groupId> 
     <artifactId>maven-scala-plugin</artifactId> 
     <executions> 
      <execution> 
      <goals> 
       <goal>compile</goal> 
       <goal>testCompile</goal> 
      </goals> 
      </execution> 
     </executions> 
     <configuration> 
      <jvmArgs> 
      <jvmArg>-Xms64m</jvmArg> 
      <jvmArg>-Xmx1024m</jvmArg> 
      </jvmArgs> 
     </configuration> 
     </plugin> 
     <plugin> 
     <groupId>org.apache.maven.plugins</groupId> 
     <artifactId>maven-compiler-plugin</artifactId> 
     <configuration> 
      <source>1.6</source> 
      <target>1.6</target> 
      <encoding>${project.build.sourceEncoding}</encoding> 
      <showDeprecation>true</showDeprecation> 
     </configuration> 
     </plugin> 
     <plugin> 
     <groupId>org.apache.maven.plugins</groupId> 
     <artifactId>maven-war-plugin</artifactId> 
     <configuration> 
      <failOnMissingWebXml>false</failOnMissingWebXml> 
     </configuration> 
     </plugin> 
     <plugin> 
     <groupId>org.apache.maven.plugins</groupId> 
     <artifactId>maven-resources-plugin</artifactId> 
     <configuration> 
      <encoding>${project.build.sourceEncoding}</encoding> 
     </configuration> 
     </plugin> 
    </plugins> 
    <finalName>Zeiterfassung-web</finalName> 
    </build> 
<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - }}}1 - - - --> 
<!-- Profiles - - - - - - - - - - - - - - - - - - - - - - - {{{1 - - - --> 
    <profiles> 
    <profile> 
     <id>endorsed</id> 
     <activation> 
     <property> 
      <name>sun.boot.class.path</name> 
     </property> 
     </activation> 
     <build> 
     <plugins> 
      <plugin> 
      <groupId>org.apache.maven.plugins</groupId> 
      <artifactId>maven-compiler-plugin</artifactId> 
      <configuration> 
       <source>1.6</source> 
       <target>1.6</target> 
       <encoding>${project.build.sourceEncoding}</encoding> 
       <showDeprecation>true</showDeprecation> 
       <compilerArguments> 
       <bootclasspath>${settings.localRepository}/javax/javaee-endorsed-api/6.0/javaee-endorsed-api-6.0.jar${path.separator}${sun.boot.class.path}</bootclasspath> 
       </compilerArguments> 
      </configuration> 
      <dependencies> 
       <dependency> 
       <groupId>javax</groupId> 
       <artifactId>javaee-endorsed-api</artifactId> 
       <version>6.0</version> 
       </dependency> 
      </dependencies> 
      </plugin> 
     </plugins> 
     </build> 
    </profile> 
    </profiles> 
<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - }}}1 - - - --> 
<!-- Reporting - - - - - - - - - - - - - - - - - - - - - - - {{{1 - - - --> 
    <reporting> 
    <plugins> 
     <plugin> 
     <groupId>org.apache.maven.plugins</groupId> 
     <artifactId>maven-javadoc-plugin</artifactId> 
     <configuration> 
      <show>private</show> 
      <nohelp>true</nohelp> 
     </configuration> 
     </plugin> 
    </plugins> 
    </reporting> 
<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - }}}1 - - - --> 
<!-- Properties - - - - - - - - - - - - - - - - - - - - - - {{{1 - - - --> 
    <properties> 
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> 
    <maven.compile.encoding>UTF-8</maven.compile.encoding> 
    <netbeans.hint.deploy.server>gfv3ee6wc</netbeans.hint.deploy.server> 
    </properties> 
<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - }}}1 - - - --> 
</project> 
<!-- vim: set nowrap tabstop=8 shiftwidth=2 softtabstop=2 expandtab :--> 
<!-- vim: set textwidth=0 filetype=xml foldmethod=marker spell spelllang=en_gb :--> 
+0

我得到了同样的结果,除了在target \ classes和target \ test-classes中,但是对于多模块项目的一些部分,一些战争和一些jar。在Windows上使用eclipse。 – 2011-02-21 21:04:20

+0

我也时常使用Eclipse。但这些日子大多是Netbeans。想到这个问题:这个问题也不太常见。我想知道是否有相关性。也许是Eclipse问题。 – Martin 2011-02-22 10:37:11

回答

1

我对你在战争中获得.svn目录感到非常惊讶(据我所知,默认排除scm目录,排除在源代码中被硬编码)。我真的不知道你为什么得到他们。

这就是说,下面可能有助于解决此问题:

... 
<plugins> 
    <plugin> 
    <groupId>org.apache.maven.plugins</groupId> 
    <artifactId>maven-war-plugin</artifactId> 
    <configuration> 
     <warSourceExcludes> 
     **/.svn/** 
     </warSourceExcludes> 
    </configuration> 
    </plugin> 
    ... 
</plugins> 

但正如我所说,我认为上面的更象是一个解决办法比的解决方案。

+0

正如我所说它是零星的,所以我想这是一种错误。但感谢后面的排除。 – Martin 2010-10-20 19:22:33

0

它最有可能的,如果你使用maven-release-plugin发生。如果它困扰你只是运行mvn clean并完成它。

+0

'mvn clean'确实是我目前的解决方案。我正在寻找更好的解决方案。或者它发生的原因,我可以避免这种情况,或知道当我做X时,我需要一个干净的后来。 – Martin 2010-10-20 09:04:34

+0

你使用'maven-release-plugin'吗? – 2010-10-20 09:10:15

+0

其实否: - > ffind/SVT“maven-release-plugin”* .pom - 0 Zeilen in 0 Dateien – Martin 2010-10-20 11:15:20