2010-08-25 10 views
0

Je suis nouveau sur eclipse + Java. Je suis en train de créer un fichier jar exécutable avec l'option d'exportation eclipse . Il fonctionne très bien. Mais dans mon projet, j'ai presque 10 paquets (le mien) et 4 classes principales. Je veux créer un fichier jar exécutable qui peut exécuter n'importe quelle classe principale à partir de 4 classes principales.Fichier jar Java Eclipse exécutable

Par exemple: Double-cliquez écrire le nom de classe et exécuter cette classe

+0

Comment déterminer la classe à exécuter? –

+0

Si je peux passer un argument à l'exécution pour indiquer le nom de la classe. C'est possible? Je suis désolé je ne suis pas java wizard :( – Tweet

Répondre

1

Juste un exemple rapide de la façon de traiter les options de la ligne de commande pour lancer différentes choses, je l'aurais mis dans une réponse à la réponse de @ serplat, mais je ne peux pas le formater.

public static void main(String[] args) 
{ 
    if(args.length == 0) { 
     // Do default here--no options specified 
    } else if(args.length > 2) { 
     // Complain that there are too many args, or implement multi-args 
    } else // known just one arg 
     if(args[1].equals("option1") { 
      // call the main of your first app 
     } else if(args[1].equals("option2") { 
      // start your second app 
     ... 
    } 
} 

Il existe de bien meilleurs moyens de gérer les commandes en ligne de commande, mais cela est compréhensible et devrait faire ce dont vous avez besoin. Plus tard, vous pourriez envisager quelque chose de plus flexible.

2

JARs ne fonctionnent Executable pas de cette façon. Ils écrivent un fichier manifeste dans le JAR qui déclare où se trouve la classe principale, et il exécute celui-là. Vous devez créer 4 fichiers JAR différents.

Alternativement, vous pouvez simplement créer une classe principale qui vous permet de taper lequel des quatre que vous voulez, et ensuite l'exécuter. Fondamentalement, vous imiteriez la fonctionnalité que vous recherchez par vous-même.

+0

Salut, Merci pour votre réponse J'ai essayé votre solution.Mais je ne suis pas expert pour faire une telle classe principale de souper.Pouvez-vous s'il vous plaît fournir un pseudo code? – Tweet

3

N'utilisez pas de fichier exécutable. Au lieu de cela créer un jar normal qui aura des classes compilées. A partir de la ligne de commande, appelez la classe principale que vous souhaitez appeler en tant qu'argument de la commande java jar.

java -jar test.jar com.company.unit.MainClass1 

java -jar test.jar com.company.unit.MainClass2 
1

J'ai récemment fait un tutoriel qui vous montre comment créer un fichier jar exécutable qui fonctionnera avec un double clic dans Windows, Mac OSX et Linux. Pour mon projet, j'ai emballé un jeu de bibliothèque lisse que j'avais fait. J'espère que cela aide.

http://aramk.com/blog/2010/12/05/how-to-make-a-multi-platform-executable-java-jar-file/

+0

Ce lien semble échouer? S'il existe un lien alternatif, vous pouvez fournir Aram? –

Questions connexes