Comment faire un fichier jar exécutable à l'aide de l'Ide, de Sélénium/TestNG fichier java?

J'ai été Googler pour les jours à essayer de comprendre comment faire, si quelqu'un l'a fait avant, je serais très reconnaissant de l'aide.

J'ai une automatisation de projet de test, j'ai créé dans IntelliJ qui automatise un utilisateur d'interagir avec une Application Web.

J'aimerais mettre ce test automatisé (créé en Java, en utilisant le Sélénium et TestNG) dans un fichier jar exécutable que d'autres puissent l'exécuter en double-cliquant sur le fichier jar.

Chaque fois que je tente de créer un fichier jar en accédant à la Structure du Projet -> Artefact -> + -> Jar -> à Partir de modules avec des dépendances, il finit par créer un jar qui prétend qu'il n',

"Could not find or load the main class <package.MainClass> "

lorsque je tente de l'exécuter avec la commande suivante:

java -jar MyProject.jar <Manifest Path>

Aucune idée de pourquoi je ne cesse de vous obtenez cette erreur, ou avoir un moyen de le faire avec succès?

Aussi, ici, est mon pom.xml:

<groupId>TestAutomation</groupId>
<artifactId>TestAutomation</artifactId>
<version>1.0-SNAPSHOT</version>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-assembly-plugin</artifactId>
<configuration>
<archive>
<manifest>
<addClasspath>true</addClasspath>
<mainClass>com.test.automation.Executable</mainClass>
</manifest>
</archive>
<descriptorRefs>
<descriptorRef>jar-with-dependencies</descriptorRef>
</descriptorRefs>
</configuration>
</plugin>
</plugins>
</build>
<dependencies>
<dependency>
<groupId>org.seleniumhq.selenium</groupId>
<artifactId>selenium-server</artifactId>
<version>2.39.0</version>
</dependency>
<dependency>
<groupId>org.seleniumhq.selenium</groupId>
<artifactId>selenium-java</artifactId>
<version>2.40.0</version>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.11</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.testng</groupId>
<artifactId>testng</artifactId>
<version>6.1.1</version>
<scope>test</scope>
</dependency>
</dependencies>

OriginalL'auteur urbanaut | 2014-03-25