2017-02-07 11 views
1

これは私のPOMファイルであるJava MavenプロジェクトのJARファイルを正しく構築するにはどうすればいいですか?

<?xml version="1.0" encoding="UTF-8"?> 
<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.tacton.tcsite</groupId> 
<artifactId>asdf</artifactId> 
<version>1.0</version> 
<packaging>jar</packaging> 
<description>Plugin provides testing for my first application</description> 
<name>Hello World Application</name> 



<properties> 
    <outputDir>${project.build.directory}/output</outputDir> 
    <profileName>tcsite-deploy</profileName> 
    <tcsite.deploy.dir>C:/Program Files/TCsite standard 3.4.1/tomcat/webapps/ROOT/WEB-INF/plugins</tcsite.deploy.dir> 

    <!-- Add custom build final name--> 
    <plugin.finalName>${project.artifactId}.${project.version}   </plugin.finalName> 
</properties> 

<dependencies> 
    <dependency> 
     <groupId>junit</groupId> 
     <artifactId>junit</artifactId> 
     <version>4.12</version> 
    </dependency> 
</dependencies> 

<build> 
    <finalName>${plugin.finalName}</finalName> 
    <plugins> 
     <plugin> 
      <groupId>org.apache.maven.plugins</groupId> 
      <artifactId>maven-compiler-plugin</artifactId> 
      <version>3.1</version> 
      <configuration> 
       <source>1.8</source> 
       <target>1.8</target> 
      </configuration> 
     </plugin> 
    </plugins> 
</build> 

<repositories> 
    <repository> 
     <id>tcsite-repository-releases</id> 
     <name>tcsite-repository-releases</name> 
     <url>http://artifactory.tacton.com/artifactory/tcsite</url> 
     <releases> 
      <enabled>true</enabled> 
      <checksumPolicy>fail</checksumPolicy> 
     </releases> 
     <snapshots> 
      <enabled>false</enabled> 
     </snapshots> 
    </repository> 
</repositories> 

<profiles> 
    <profile> 
     <id>tcsite-deploy</id> 
     <activation> 
      <activeByDefault>true</activeByDefault> 
      <property> 
       <name>tcsite-deploy-dir</name> 
       <value>${tcsite.deploy.dir}</value> 
      </property> 
     </activation> 
     <build> 
      <finalName>${plugin.finalName}</finalName> 
      <plugins> 
       <plugin> 
        <groupId>org.apache.maven.plugins</groupId> 
        <artifactId>maven-compiler-plugin</artifactId> 
        <version>3.1</version> 
        <configuration> 
         <source>1.8</source> 
         <target>1.8</target> 
        </configuration> 
       </plugin> 
       <plugin> 
        <artifactId>maven-antrun-plugin</artifactId> 
        <version>1.7</version> 
        <dependencies> 
         <dependency> 
          <groupId>ant-contrib</groupId> 
          <artifactId>ant-contrib</artifactId> 
          <version>20020829</version> 
          <exclusions> 
           <exclusion> 
            <groupId>ant</groupId> 
            <artifactId>ant</artifactId> 
           </exclusion> 
          </exclusions> 
         </dependency> 
         <dependency> 
          <groupId>org.apache.ant</groupId> 
          <artifactId>ant-nodeps</artifactId> 
          <version>1.8.1</version> 
         </dependency> 
        </dependencies> 
        <executions> 
         <execution> 
          <phase>package</phase> 
          <configuration> 
           <tasks> 
            <taskdef resource="net/sf/antcontrib/antcontrib.properties" 
              classpathref="maven.plugin.classpath"/> 
            <if> 
             <!-- Remember to set -DSKIP_DEPLOY=true in Jenkins Build Job configuration in order 
             to ignore copying the file to ${tcsite.deploy.dir} --> 
             <!-- TISD-1405 --> 
             <isfalse value="${SKIP_DEPLOY}"/> 
             <then> 
              <copy 
                file="${project.build.directory}/${project.build.finalName}.${project.packaging}" 
                todir="${tcsite.deploy.dir}" verbose="true" 
                failonerror="false"/> 
             </then> 
            </if> 
           </tasks> 
          </configuration> 
          <goals> 
           <goal>run</goal> 
          </goals> 
         </execution> 
        </executions> 
       </plugin> 
       <plugin> 
        <groupId>org.codehaus.gmavenplus</groupId> 
        <artifactId>gmavenplus-plugin</artifactId> 
        <version>1.4</version> 
        <executions> 
         <execution> 
          <goals> 
           <goal>testCompile</goal> 
          </goals> 
         </execution> 
        </executions> 
        <configuration> 
         <testSources> 
          <source> 
           <directory>${project.basedir}/src/test/groovy</directory> 
           <includes> 
            <include>**/*.groovy</include> 
           </includes> 
          </source> 
         </testSources> 
        </configuration> 
       </plugin> 
      </plugins> 
     </build> 
    </profile> 
</profiles> 

これは私がMavenのとそれをビルドするときに問題がある私のディレクトリ構造

enter image description here

です。 jarファイルが作成されましたが、そのjarファイルにはプラグインディレクトリ内のファイルが含まれていません。 helloWorld.jsおよびplugin.xml。この問題はどのように解決されますか?

答えて

2

src/main/pluginフォルダがMavenによってソースまたはリソースフォルダとして認識されません。
プラグインフォルダをMavenのデフォルトのリソースディレクトリであるsrc/main/resourcesに移動するだけで問題は解決します。

関連する問題