CONNEXION
  • RetourJeux
    • Sorties
    • Hit Parade
    • Les + populaires
    • Les + attendus
    • Soluces
    • Tous les Jeux
    • Gaming
  • RetourActu Gaming
    • News
    • Astuces
    • Tests
    • Previews
    • Toute l'actu gaming
  • RetourBons plans
    • Bons plans
    • Bons plans Smartphone
    • Bons plans Hardware
    • Bons plans Image et Son
    • Bons plans Amazon
    • Bons plans Cdiscount
    • Bons plans Decathlon
    • Bons plans Fnac
    • Tous les Bons plans
  • RetourJVTech
    • Actus High-Tech
    • Intelligence Artificielle
    • Smartphones
    • Mobilité urbaine
    • Hardware
    • Image et son
    • Tutoriels
    • Tests produits High-Tech
    • Guides d'achat High-Tech
    • JVTech
  • RetourCulture
    • Actus Culture
    • Culture
  • RetourVidéos
    • A la une
    • Gaming Live
    • Vidéos Tests
    • Vidéos Previews
    • Gameplay
    • Trailers
    • Chroniques
    • Replay Web TV
    • Toutes les vidéos
  • RetourForums
    • Hardware PC
    • PS5
    • Switch 2
    • Xbox Series
    • Switch
    • Pokemon pocket
    • FC 25 Ultimate Team
    • League of Legends
    • Tous les Forums
  • PC
  • PS5
  • Xbox Series
  • Switch 2
  • PS4
  • One
  • Switch
  • iOS
  • Android
  • MMO
  • RPG
  • FPS
En ce moment Genshin Impact Valhalla Breath of the wild Animal Crossing GTA 5 Red dead 2
Liste des sujets

Question developpement java

Ratakhy
Ratakhy
Niveau 16
06 décembre 2023 à 11:43:42

bonjour j'ai écrit un petit programme en java et j'aimerai pouvoir l'executer a l'aide d'un fichier jar.
J'ai donc créé un fichier Manifest.txt avec dedans Main-Class: CageProgramGUI
(CageProgramGUI etant le nom de ma class principale, sans package).
Lorsque je créé le fichier jar avec la commande jar cfm CageProgramGUI.jar Manifest.txt *.class pas de probleme, le fichier jar se créé.
cependant, lorsque je veux l'ouvrir avec la commande java -jar CageProgramGUI.jar , il me dit no main manifest attribute, in CageProgramGUI.jar
alors que j'ai bien spécifié la main class dans le manifest :gne:
qqn peut m'aider ? :svp:

Ratakhy
Ratakhy
Niveau 16
06 décembre 2023 à 11:47:59

:up:

Ratakhy
Ratakhy
Niveau 16
06 décembre 2023 à 11:50:08

me laissez pas dans la merde svp

okjimmyiii
okjimmyiii
Niveau 9
06 décembre 2023 à 11:52:12

Je sais pas mais je te up https://image.noelshack.com/fichiers/2019/52/2/1577183045-gngngngn.png

Ratakhy
Ratakhy
Niveau 16
06 décembre 2023 à 11:55:03

Le 06 décembre 2023 à 11:52:12 :
Je sais pas mais je te up https://image.noelshack.com/fichiers/2019/52/2/1577183045-gngngngn.png

ca c'est sympa khey j'apprécie

okjimmyiii
okjimmyiii
Niveau 9
06 décembre 2023 à 11:55:27

Le 06 décembre 2023 à 11:55:03 :

Le 06 décembre 2023 à 11:52:12 :
Je sais pas mais je te up https://image.noelshack.com/fichiers/2019/52/2/1577183045-gngngngn.png

ca c'est sympa khey j'apprécie

Pas de souci https://image.noelshack.com/fichiers/2019/52/2/1577183045-gngngngn.png

AaronRamsgod
AaronRamsgod
Niveau 40
06 décembre 2023 à 11:58:20

fait voir le contenu du manifest + demande a chatgpt

Ratakhy
Ratakhy
Niveau 16
06 décembre 2023 à 12:00:22

Le 06 décembre 2023 à 11:58:20 :
fait voir le contenu du manifest + demande a chatgpt

le manifest c'est juste Main-Class: CageProgramGUI
+ chatgpt me redis les meme trucs en boucle

AaronRamsgod
AaronRamsgod
Niveau 40
06 décembre 2023 à 12:08:31

ok montre la classe mtn

Toto123450
Toto123450
Niveau 21
06 décembre 2023 à 12:11:03

Le fichier manifest doit s'appeler Manifest.MF pas Manifest.txt

Ratakhy
Ratakhy
Niveau 16
06 décembre 2023 à 12:16:19
import javax.swing.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.KeyEvent;
import java.awt.event.KeyListener;

class CageProgramGUI {
    public static void main(String[] args) {
        JFrame frame = new JFrame("Programme Cage");
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        frame.setSize(400, 200);
        frame.setLayout(null);

        JLabel label = new JLabel("Entrez la longueur de la cage (en metres) :");
        label.setBounds(20, 0, 250, 20);

        JTextField textField = new JTextField();
        textField.setBounds(20, 20, 100, 30);

        JButton calculateButton = new JButton("Calculer");
        calculateButton.setBounds(140, 20, 100, 30);

        JTextArea resultArea = new JTextArea();
        resultArea.setBounds(20, 70, 350, 80);
        resultArea.setEditable(false);

        frame.add(label);
        frame.add(textField);
        frame.add(calculateButton);
        frame.add(resultArea);

        calculateButton.addActionListener(new ActionListener() {
            @Override
            public void actionPerformed(ActionEvent e) {
                calculateResult(textField, resultArea);
            }
        });

        textField.addKeyListener(new KeyListener() {
            @Override
            public void keyTyped(KeyEvent e) {
            }

            @Override
            public void keyPressed(KeyEvent e) {
                if (e.getKeyCode() == KeyEvent.VK_ENTER) {
                    calculateResult(textField, resultArea);
                }
            }

            @Override
            public void keyReleased(KeyEvent e) {
            }
        });

        frame.setVisible(true);
    }

    private static void calculateResult(JTextField textField, JTextArea resultArea) {
        double longueur_Cage = Double.parseDouble(textField.getText());
        int nb_taule = (int) Math.ceil(longueur_Cage);
        double depassement_cm = Math.round(((nb_taule - longueur_Cage) / 2) * 100);
        double depassement_cm_abs = Math.abs(depassement_cm);
        boolean chevauchement1 = (depassement_cm_abs > 15 && depassement_cm_abs < 33);
        boolean chevauchement2 = (depassement_cm_abs >= 33);

        StringBuilder result = new StringBuilder();
        result.append("Résultats :\n");
        result.append("Nombre de taules nécéssaires : ").append(nb_taule).append("\n");

        if (depassement_cm <= 15) {
            if (depassement_cm != 0) {
                result.append("Depassement de chaque coté : ").append(depassement_cm_abs).append(" cm\n");
            } else {
                result.append("Pas besoin de depassement\n");
            }
        }

        if (chevauchement1) {
            double depassement_cm_H1 = Math.round((((nb_taule - 0.33) - longueur_Cage) / 2) * 100);
            double depassement_cm_abs_H1 = Math.abs(depassement_cm_H1);
            if (depassement_cm_abs_H1 != 0) {
                result.append("Un chevauchement et un depassement de ").append(depassement_cm_abs_H1).append(" cm\n");
            } else {
                result.append("Un chevauchement et pas besoin de depassement\n");
            }
        }

        if (chevauchement2) {
            double depassement_cm_H2 = Math.round((((nb_taule - 0.66) - longueur_Cage) / 2) * 100);
            double depassement_cm_abs_H2 = Math.abs(depassement_cm_H2);
            if (depassement_cm_abs_H2 != 0) {
                result.append("Deux chevauchements et un depassement de ").append(depassement_cm_abs_H2).append(" cm\n");
            } else {
                result.append("Deux chevauchements et pas besoin de depassement\n");
            }
        }

        resultArea.setText(result.toString());
    }
}
Ratakhy
Ratakhy
Niveau 16
06 décembre 2023 à 12:19:07

Le 06 décembre 2023 à 12:11:03 :
Le fichier manifest doit s'appeler Manifest.MF pas Manifest.txt

ca change rien j'ai essayé aussi

Ratakhy
Ratakhy
Niveau 16
06 décembre 2023 à 12:32:16

heeelp

AaronRamsgod
AaronRamsgod
Niveau 40
06 décembre 2023 à 12:38:30

met le chemin complet du package pas juste le nom de la classe

Ratakhy
Ratakhy
Niveau 16
06 décembre 2023 à 12:58:20

Le 06 décembre 2023 à 12:38:30 :
met le chemin complet du package pas juste le nom de la classe

J'ai essayé aussi, ça ne marche pas

Ratakhy
Ratakhy
Niveau 16
06 décembre 2023 à 15:54:32

:up:

Ratakhy
Ratakhy
Niveau 16
06 décembre 2023 à 16:01:17

Ou sont les experts ? :-(

Ratakhy
Ratakhy
Niveau 16
06 décembre 2023 à 16:06:57

up

Astroponey
Astroponey
Niveau 5
06 décembre 2023 à 16:13:58

Le fichier MANIFEST.MF doit se trouver dans un dossier META-INF dans ton JAR.

ubunchu
ubunchu
Niveau 60
06 décembre 2023 à 16:15:40

t'es sur ton fichier manifest il s'appelle pas manifest.mf.txt ?

Sous forums
  • Religion