首页 > 解决方案 > 通过 Jenkins Pipline 运行主类

问题描述

我想在 jenkins (Pipline) 中运行一个 maven 项目

这是我的简单类主项目:

public class Main {
    public static void main(String[] args){
        System.out.println("this is my main");
    }
}

我通过提供 GitLab 项目链接将其添加到 Jenkins。

运行 sh 'mvn clean deploy' 告诉我该作业是跳过不存在的 resourceDirectory /var/lib/jenkins/workspace/create_pass_criteria/src/test/resources

我需要在哪里指定运行主类? 我的主要课程位于“/var/lib/jenkins/workspace/create_pass_criteria/src/”目录中,但该作业一直在寻找“test/resources”目录。

如果需要,这是我的 pom.xml:


<?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>org.example</groupId>
    <artifactId>create_pass_criteria</artifactId>
    <version>1.0-SNAPSHOT</version>
    <dependencies>
        <dependency>
            <groupId>com.imp.automation</groupId>
            <artifactId>reporting</artifactId>
            <version>9.0.32</version>
        </dependency>
        <dependency>
            <groupId>com.imp.automation</groupId>
            <artifactId>sec-services</artifactId>
            <version>8.0.125-SNAPSHOT</version>
        </dependency>
        <dependency>
            <groupId>com.imp.automation</groupId>
            <artifactId>systemtests-services</artifactId>
            <version>9.0.32</version>
        </dependency>
        <dependency>
            <groupId>com.imp.automation</groupId>
            <artifactId>systemtests-sec</artifactId>
            <version>8.0.125-SNAPSHOT</version>
        </dependency>
    </dependencies>

    <properties>
        <maven.compiler.source>1.8</maven.compiler.source>
        <maven.compiler.target>1.8</maven.compiler.target>
    </properties>


    <build>
        <plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-compiler-plugin</artifactId>
                <executions>
                <execution>
                    <phase>test</phase>
                    <configuration>
                        <source>1.8</source>
                        <target>1.8</target>
                        <mainClass>Create_pass_criteria.Main</mainClass>
                        <arguments>
                            <argument>arg0</argument>
                            <argument>arg1</argument>
                        </arguments>
                    </configuration>
                </execution>
                </executions>
            </plugin>
        </plugins>
    </build>



    <distributionManagement>
        <repository>
            <name>release repo</name>
            <id>releases</id>
            <url>scp:\\C:\\work\myfolder</url>
        </repository>
        <snapshotRepository>
            <name>snapshots repo</name>
            <id>snapshots</id>
            <url>file:///C:/work/myfolder</url>
        </snapshotRepository>
    </distributionManagement>

</project>

感谢任何帮助。

标签: mavenjenkinsjenkins-pipeline

解决方案


推荐阅读