ArsalanK
ArsalanK

Reputation: 300

Jenkins - mvn not found

Hello I'm new to jenkins and getting this issue. I'm using jenkins in windows azure

  • mvn clean package /var/lib/jenkins/workspace/vcc@tmp/durable-b5407f14/script.sh: 2: /var/lib/jenkins/workspace/vcc@tmp/durable-b5407f14/script.sh: mvn: not found.

Jenkinsfiles:

node {
   stage('init') {
      checkout scm
   }
   stage('build') {
      sh '''
         mvn clean package
         cd target
         cp ../src/main/resources/web.config web.config
         cp todo-app-java-on-azure-1.0-SNAPSHOT.jar app.jar 
         zip todo.zip app.jar web.config
      '''
   }
   stage('deploy') {
      azureWebAppPublish azureCredentialsId: env.AZURE_CRED_ID,
      resourceGroup: env.RES_GROUP, appName: env.WEB_APP, filePath: "**/todo.zip"
   }
}

can any body help me how can I resolve this mvn issue.

P.S I'm following this tutorial https://learn.microsoft.com/en-us/azure/jenkins/tutorial-jenkins-deploy-web-app-azure-app-service

Upvotes: 3

Views: 13628

Answers (3)

Jorciney
Jorciney

Reputation: 740

You may wanna check if Jenkins has the pipeline-maven plugin installed. If you don't have it, search and install the pipeline-maven plugin.

Pipeline-maven plugin

Once the plugin is installed, you can use maven as follows

node{
    stage('init'){
      //init sample
    }
    stage('build'){
        withMaven(maven: 'mvn') {
            sh "mvn clean package"
        }
    }
}

Upvotes: 3

Soroush Karimi
Soroush Karimi

Reputation: 413

I add this line right before sh command in the build stage : def mvnHome = tool name: 'Apache Maven 3.6.0', type: 'maven' and instead of mvn you should use ${mvnHome}/bin/mvn

thank this youtube film to help me.

 pipeline{
  stage('com'){
    def mvnHome = tool name: 'Apache Maven 3.6.0', type: 'maven'
    sh "${mvnHome}/bin/mvn -B -DskipTests clean package"
  }
}

Upvotes: 1

AutomatedOwl
AutomatedOwl

Reputation: 1089

You may try to add maven tool to your pipeline:

 tools {
    maven 'M3'
  }
  stages {
   stage('init') {
      checkout scm
   }
   stage('build') {
      sh '''
         mvn clean package
         cd target
         cp ../src/main/resources/web.config web.config
         cp todo-app-java-on-azure-1.0-SNAPSHOT.jar app.jar 
         zip todo.zip app.jar web.config
      '''
   }
   stage('deploy') {
      azureWebAppPublish azureCredentialsId: env.AZURE_CRED_ID,
      resourceGroup: env.RES_GROUP, appName: env.WEB_APP, filePath: "**/todo.zip"
   }
}

Upvotes: 3

Related Questions