引言:
由于没有使用过Maven和Ant,今天花了一下午的时间来研究把一个指定的文件copy到自己想要的文件夹中。。。
为什么要这样呢?
主要是因为applet部署在Tomcat上
其中applet的class 部署到Tomcat默认的WEB-INF中了,不能被访问到,开始的时候上网搜了许多
不知道是否是所说的认证和权限问题。。。
也做了一些research,后来不知道为什么就放弃了,于是现在需要把WEB-INF中的class copy出来到指定的可以由applet访问的
文件夹中。
today,什么也不想做,早上看了下news,下午便想到必须开工来弄一下这个了,于是google。。。
正文:
copy有很多中方法
1。maven-dependency-plugin
- <project>
- […]
- <build>
- <plugins>
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-dependency-plugin</artifactId>
- <executions>
- <execution>
- <id>copy-installed</id>
- <phase>install</phase>
- <goals>
- <goal>copy</goal>
- </goals>
- <configuration>
- <artifactItems>
- <artifactItem>
- <groupId>${project.groupId}</groupId>
- <artifactId>${project.artifactId}</artifactId>
- <version>${project.version}</version>
- <type>${project.packaging}</type>
- </artifactItem>
- </artifactItems>
- <outputDirectory>some-other-place</outputDirectory>
- </configuration>
- </execution>
- </executions>
- </plugin>
- </plugins>
- </build>
- […]
- </project>
2.maven-jar-plugin
- <project>
- …
- <build>
- <plugins>
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-jar-plugin</artifactId>
- …
- <configuration>
- <archive>
- <manifest>
- <addClasspath>true</addClasspath>
- </manifest>
- </archive>
- </configuration>
- …
- </plugin>
- </plugins>
- </build>
- …
- <dependencies>
- <dependency>
- <groupId>commons-lang</groupId>
- <artifactId>commons-lang</artifactId>
- <version>2.1</version>
- </dependency>
- <dependency>
- <groupId>org.codehaus.plexus</groupId>
- <artifactId>plexus-utils</artifactId>
- <version>1.1</version>
- </dependency>
- </dependencies>
- …
- </project>
3.maven-antrun-plugin
- <build>
- <finalName>beyondtrack-war</finalName>
- <plugins>
- <plugin>
- <!–
- copy jBPM designer applet and it’s icom to war
- –>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-antrun-plugin</artifactId>
- <version>1.2</version>
- <executions>
- <execution>
- <id>prepare-dependencies-repackage-copy</id>
- <phase>generate-resources</phase>
- <goals>
- <goal>run</goal>
- </goals>
- <configuration>
- <tasks>
- <copy todir=“target/beyondtrack-war/classes/net/java/dev/beyondtrack/web/workflow/designer” overwrite=“true”>
- <fileset dir=“target/beyondtrack-war/WEB-INF/classes/net/java/dev/beyondtrack/web/workflow/designer”/>
- </copy>
- <copy todir=“target/beyondtrack-war/classes/net/java/dev/beyondtrack/web/workflow/designer/icon” overwrite=“true”>
- <fileset dir=“src/main/java/net/java/dev/beyondtrack/web/workflow/designer/icon”/>
- </copy>
- </tasks>
- </configuration>
- </execution>
- </executions>
- </plugin>
理由:1.需要在该工程下面copy该工程中的某一小部分到另一文件夹中,groupId不知道要怎么填写(也许有方法,可能由于本人笨拙,才接触不知道怎么写)。。。因此没有使用maven-dependency-plugin
2.研究了一半,突然看到maven-antrun-plugin,发现比较好,上手快,于是就放弃了使用maven-jar-plugin。。。
总结:Maven 很强大。。。
plugin很多,使用时应尽快根据自己的需求找到合适该项目的plugin
作者:Vanessa
Blog:http:/blog.csdn.net/Vanessa219
Email & QQ:lly219@gmail.com