Cannot prepare the release because you have local modifications : - java

I am trying to do a Maven realeas prepare but this error keeps happening
I tried to execlude the root pom from being checked but it goes now to the other poms
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-release-plugin:2.5.3:prepare (default-cli) on project sfg-pet-clinic: Cannot prepare the release because you h
ave local modifications :
[ERROR] [pet-clinic-data/pom.xml:modified]
[ERROR] [pet-clinic-web/pom.xml:modified]
and this is an example of my root pom :
<build>
<pluginManagement>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-release-plugin</artifactId>
<configuration>
<goals>install</goals>
<checkModificationExcludes>
<checkModificationExclude>pom.xml</checkModificationExclude>
</checkModificationExcludes>
</configuration>
</plugin>
</plugins>
</pluginManagement>
</build>
<scm>
<developerConnection>scm:git:https://github.com/OmarSharif93/sfg-pet-clinic.git</developerConnection>
</scm>
what can I do to resolve this ?

I Committed the pom.xml and it solved the problem.

Related

Maven invalid target release: 13

I'm using Maven in Eclipse and i want to run my project with Java13. Every time i build my project i get the following error message:
Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.1:compile (default-compile) on project subscriptionsmanager: Fatal error compiling: invalid target release: 13 -> [Help 1]
I've configured my pom.xml file inside <properties> as follows:
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<maven.compiler.source>13</maven.compiler.source>
<maven.compiler.target>13</maven.compiler.target>
and Java13 as JRE from Eclipse from Eclipse "Java Build Path" section.
Is there any settings that I have not considered?
As naman suggested, you'll need to explicitly configure your maven compiler plugin:
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.8.1</version>
<configuration>
<source>13</source>
<target>13</target>
</configuration>
</plugin>
...
In addition to the above post, you can also directly mention the release in configuration.
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.8.1</version>
<configuration>
<release>11</release>
</configuration>
</plugin>
</plugins>
</build>

Maven build fails with os-maven-plugin

I added the os-maven-plugin to my pom like so:
<build>
<extensions>
<!-- native platform classifier -->
<extension>
<groupId>kr.motd.maven</groupId>
<artifactId>os-maven-plugin</artifactId>
<version>1.5.0.Final</version>
</extension>
</extensions>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>2.19</version>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<source>1.8</source>
<target>1.8</target>
</configuration>
</plugin>
</plugins>
</build>
On my dev machine I can compile and run this project just fine, however when I try to run the build via Jenkins it fails immediately and shows this error in the logs:
[INFO] Internal error in the plugin manager getting plugin
'org.apache.maven.plugins:maven-clean-plugin': Plugin
'org.apache.maven.plugins:maven-clean-plugin:2.5' has an invalid descriptor:
1) Plugin's descriptor contains the wrong group ID: kr.motd.maven
2) Plugin's descriptor contains the wrong artifact ID: os-maven-plugin
3) Plugin's descriptor contains the wrong version: 1.5.0.Final
Clearly, it seems to be using the descriptors from the os-maven-plugin to get the clean-plugin and fails because the descriptors don't match up for that plugin.
Why is this and how should I be incorporating the os-maven-plugin into my project?

maven-jacoco-plugin: Build fails after adding class excluding

I am using maven jacoco plugin for code coverage. I decided to exclude some classes from jacoco coverage report. I found here, how to do it.
So my updated pom file looks like this:
<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>
<artifactId>payment-rest</artifactId>
<packaging>war</packaging>
<name>payment-rest</name>
<parent>
<artifactId>payment-ws</artifactId>
<groupId>com.example.foo</groupId>
<version>1.0.0-INTEGRATION-SNAPSHOT</version>
</parent>
<properties>
<jacoco.line.coverage>0.78</jacoco.line.coverage>
<jacoco.branch.coverage>1.00</jacoco.branch.coverage>
<servlet.version>3.0.1</servlet.version>
</properties>
<dependencies>
<!-- all dependecies here-->
</dependencies>
<build>
<finalName>payment-ws</finalName>
<plugins>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>sonar-maven-plugin</artifactId>
</plugin>
<plugin>
<groupId>org.jacoco</groupId>
<artifactId>jacoco-maven-plugin</artifactId>
<configuration>
<excludes>
<exclude>
**/com/example/foo/payment/configuration/**.*
</exclude>
</excludes>
</configuration>
</plugin>
<plugin>
<artifactId>maven-war-plugin</artifactId>
<configuration>
<attachClasses>true</attachClasses>
<classesClassifier>classes</classesClassifier>
<failOnMissingWebXml>false</failOnMissingWebXml>
</configuration>
</plugin>
</plugins>
</build>
</project>
So, when I am running mvn clean install command, I gets this error ():
Execution default-test of goal org.apache.maven.plugins:maven-surefire-plugin:2.19:test failed: The forked VM terminated without properly saying goodbye. VM crash or System.exit called?
If I remove exclusion part, project builds successfully.
Can someone advise me how can I solve this issue?
issue is occur because maven-surefire-plugin is missing into your project pom.xml. you need to add this plugin into pom.xml, after adding need to update and rebuild the project and run it.
you can find the maven plugin below:
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>2.19.1</version>
</plugin>
</plugins>
you can refer higher version from 2.19.1.

JavaDoc can't add custom stylesheet from src/main/resources

While executing mvn javadoc:javadoc i get this error:
An error has occurred in JavaDocs report generation: Option <stylesheet/> supports only "maven" or "java" value. -> [Help 1]"
But i read here http://maven.apache.org/plugins/maven-javadoc-plugin/examples/stylesheet-configuration.html that <stylesheetfile/> could be a resource in your project directory, i.e. src/main/java, src/main/resources or src/main/javadoc
so why i can not have in my pom:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-javadoc-plugin</artifactId>
<version>2.10.4</version>
<configuration>
<stylesheet>src/main/resources/example.css</stylesheet>
</configuration>
</plugin>
?
If you like to configure a file which should be used you have to use the following configuration:
<project>
...
<reporting> (or <build>)
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-javadoc-plugin</artifactId>
<version>2.10.4</version>
<configuration>
<stylesheetfile>${basedir}/path/to/your/stylesheetfile.css</stylesheetfile>
...
</configuration>
</plugin>
</plugins>
...
</reporting> (or </build>)
...
</project>
I had a typo not <stylesheet> but <stylesheetfile> should be used.

Error using checkstyle/google_checks.xml with maven-checkstyle-plugin

I am trying to use checkstyles google_checks.xml with maven-checkstyle-plugin. If I use the google_checks.xml with the latest checkstyle intelliJ plugin everything is correct but when I try configurating it via maven-checkstyle plugin I get this error:
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-checkstyle-plugin:2.13:check (default-cli) on project XX_XX_XX: Failed during checkstyle configuration: cannot initialize module TreeWalker - Unable to instantiate AvoidEscapedUnicodeCharacters:
Unable to instantiate AvoidEscapedUnicodeCharactersCheck
My pom.xml looks like this:
<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">
<properties>
[...]
<checkstyle.file.path>develop/checkstyle/google_checks.xml</checkstyle.file.path>
</properties>
[...]
<build>
<plugins>
[...]
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-checkstyle-plugin</artifactId>
<version>2.13</version>
<configuration>
<configLocation>${checkstyle.file.path}</configLocation>
<failOnViolation>false</failOnViolation>
</configuration>
</plugin>
</plugins>
</build>
<reporting>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-checkstyle-plugin</artifactId>
<version>2.9.1</version>
<configuration>
<configLocation>${checkstyle.file.path}</configLocation>
<failOnViolation>false</failOnViolation>
</configuration>
</plugin>
</plugins>
</reporting>
Do you guys have some suggestions about what could be wrong?
fixed this by updating the checkstyle-dependency manually to the latest stable version:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-checkstyle-plugin</artifactId>
<version>2.13</version>
<dependencies>
<dependency>
<groupId>com.puppycrawl.tools</groupId>
<artifactId>checkstyle</artifactId>
<version>${checkstyle.latest.version}</version>
</dependency>
</dependencies>
<configuration>
<configLocation>${checkstyle.file.path}</configLocation>
<failOnViolation>false</failOnViolation>
</configuration>
</plugin>
Maven checkstyle plugin uses checkstyle 5.7 (the first line of plugin description).
Checkstyle 5.7 does not have this check (see checks package on grepcode).
You need either to disable this check or to wait for official fix of MCHECKSTYLE-261.
I give a demo at
https://github.com/favoorr/Maven-Checkstyle-Multimodule-Use
Multi modules and use Google Chechstyle

Categories