CopyPastor

Detecting plagiarism made easy.

Score: 0.800891101360321; Reported for: String similarity Open both answers

Possible Plagiarism

Plagiarized on 2020-10-10
by Mike Biri

Original Post

Original - Posted on 2009-02-26
by Matthew McCullough



            
Present in both answers; Present only in the new answer; Present only in the old answer;

I faced a problem (I had a checkstyle-config.xml that, should not be included in the final assembly). A solution below worked for me: Adding the **resources** section made my project-jar-with-dependancies.jar not containing checkstyle-config.xml file Simplified 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>...</groupId> <artifactId>...</artifactId> <version>...</version> <properties> ... </properties> <packaging>jar</packaging> <build> <resources> <resource> <directory>${project.basedir}/src/main/resources</directory> <excludes> <exclude>checkstyle-config.xml</exclude> </excludes> <filtering>true</filtering> </resource> </resources> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-assembly-plugin</artifactId> <version>3.3.0</version> <configuration> <descriptorRefs> <descriptorRef>jar-with-dependencies</descriptorRef> </descriptorRefs> <archive> <manifest> <mainClass>...</mainClass> </manifest> </archive> </configuration> <executions> <execution> <id>make-assembly</id> <phase>package</phase> <goals> <goal>single</goal> </goals> </execution> </executions> </plugin> </plugins> </build> <dependencies> ... </dependencies> </project>

Taking Unanswered's answer and reformatting it, we have:
<!-- language: xml -->
<build> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-jar-plugin</artifactId> <configuration> <archive> <manifest> <addClasspath>true</addClasspath> <mainClass>fully.qualified.MainClass</mainClass> </manifest> </archive> </configuration> </plugin> <plugin> <artifactId>maven-assembly-plugin</artifactId> <configuration> <descriptorRefs> <descriptorRef>jar-with-dependencies</descriptorRef> </descriptorRefs> </configuration> </plugin> </plugins> </build>
Next, I would recommend making this a natural part of your build, rather than something to call explicitly. To make this a integral part of your build, add this plugin to your `pom.xml` and bind it to the `package` lifecycle event. However, a gotcha is that you need to call the `assembly:single` goal if putting this in your pom.xml, while you would call 'assembly:assembly' if executing it manually from the command line.
<!-- language: xml -->
<project> [...] <build> <plugins> <plugin> <artifactId>maven-assembly-plugin</artifactId> <configuration> <archive> <manifest> <addClasspath>true</addClasspath> <mainClass>fully.qualified.MainClass</mainClass> </manifest> </archive> <descriptorRefs> <descriptorRef>jar-with-dependencies</descriptorRef> </descriptorRefs> </configuration> <executions> <execution> <id>make-my-jar-with-dependencies</id> <phase>package</phase> <goals> <goal>single</goal> </goals> </execution> </executions> </plugin> [...] </plugins> [...] </build> </project>

        
Present in both answers; Present only in the new answer; Present only in the old answer;