2017-10-20 50 views
0

J'ai écrit une application de discussion Java utilisant une architecture client/serveur. En tant qu'outil de construction, j'ai utilisé Maven. L'interface côté serveur est basé sur la ligne de commande et le problème est que je ne peux pas exécuter l'application par cmd ni avec la commandeJava impossible d'ouvrir la classe principale et le fichier jar

java Main 

de {basedir}/target/classes (Principal est ma classe principale), ni avec commande ouvrant le fichier jar

forme {basedir}/target. Je n'ai créé aucun paquet pour mes classes, ils sont placés dans le répertoire {basedir}/src/main/java. Lorsque je tente de charger ma classe principale, c'est la sortie:

Error: Could not find or load main class Main 

Lorsque je tente d'ouvrir mon fichier jar, c'est la sortie:

Unable to access jarfile ChatServer-1.0-SNAPSHOT 

Le projet entier fonctionne vraiment bien quand je lance dans IntelliJ. Qu'est-ce que je fais mal?

Edit:
J'ai déplacé mes classes package pl.dsdev.server, quand je lance

java -jar ChatServer-1.0-SNAPSHOT.jar 

c'est la sortie:

no main manifest attribute, in ChatServer-1.0-SNAPSHOT.jar 

Mon 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>pl.dsdev.projects</groupId> 
<artifactId>ChatServer</artifactId> 
<version>1.0-SNAPSHOT</version> 

<packaging>jar</packaging> 

<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> 
      <version>3.1</version> 
      <configuration> 
       <source>1.8</source> 
       <target>1.8</target> 
      </configuration> 
     </plugin> 
     <plugin> 
      <groupId>org.apache.maven.plugins</groupId> 
      <artifactId>maven-jar-plugin</artifactId> 
      <configuration> 
       <archive> 
        <manifest> 
         <mainClass>pl.dsdev.server.Main</mainClass> 
        </manifest> 
       </archive> 
      </configuration> 
     </plugin> 
    </plugins> 

</build> 

+2

devrait-il pas java jar ChatServer-1.0-SNAPSHOT.jar –

+0

S'il vous plaît fournir votre pom.xml –

+0

Je pense que vous avez besoin java jar ChatServer-1.0-SNAPSHOT.jar principal –

Répondre

0

Okey, ça marche maintenant. Je ne sais pas quelle était la raison, mais après que je l'ai fait

mvn clean package 

et essayé de l'exécuter à nouveau, il a finalement travaillé.