Java "Hauptklasse konnte nicht gefunden oder geladen werden"?

Ich habe gestern angefangen java zu lernen, ich nutze die IntelliJ IDE von jetbrains.

Wenn ich in meinem Projekt mehr als eine Klasse habe bekomme ich beim ausführen folgenden fehler:

Fehler: Hauptklasse Test.jar konnte nicht gefunden oder geladen werden
Ursache: java.lang.ClassNotFoundException: Test.jar

Ich erstelle die .jar datei folgendermaßen:

Bei IntelliJ habe ich unter Projectstructur/artifacts einen neuen eintrag erstellt, als Main Class meine main Klasse angegeben und dann über Build/Build Artifacts/Build die jar datei erstellt. In dem Ordner mit dieser Datei befindet sich ausschließlich die Test.jar Datei (Was, nebenbei bemerkt nicht der Name meiner Klasse ist, sollte das irgentwelche auswirkungen haben ist es allerdings nicht der Grund für mein Problem da ich bereits ein zweites projekt erstellt habe, in welchem die Klasse und die jar Datei gleich hießen und es dennoch nicht funktioniert hat (Selbe Fehlermeldung)), welche ich dann mit 'java Test.jar' ausführe. Nun bekomme ich den oben gennanten error. Meine Hauptklasse sieht wie folgt aus:

import cons.colors;

public class greyscale_converter {

public static void main(String[] args){

    System.out.println(args[0]);
}

}

Ich habe dann in dem Projekt noch das package 'cons' erstellt, in welchem sich die Klasse 'colors' befindet. Diese sieht wie folgt aus:

package cons;

public class colors {
}

Ich möchte nun also die jar datei erstellen können und von der main methode in der 'greyscale_converter' Klasse auf die klasse colors zugreifen können, bevor ich allerdings soweit kam erhielt ich schon die Fehlermeldung nach welcher die Hauptklasse nicht gefunden werden könne. Nach einer halben stunde googlen bin ich noch auf keine Lösung gestoßen die bei mir funktioniert hat. Danke schonmal.

Computer, programmieren, Java, Fehlermeldung, IntelliJ IDEA
Aus Java-Quellcode eine executable Datei erstellen (IntelliJ)?

Hallo,

wie erstelle ich mit diesem Quellcode (siehe weiter unten) in der IntelliJ IDE eine ausführbare Datei (.exe) ?
Sämtliche Erklärvideos oder Beiträge von Java-Dateien zu exe-Dateien haben mir hierfür nicht weitergeholfen.

In der cmd.exe (Eingabeaufforderung, hinter dem Promt) funktioniert die simple Anwendung über den Befehl java Lohnrechner3 einwandfrei. Allerdings suche ich nach einer Möglichkeit daraus eine App zu erstellen das sich per doppelklick in einem eigenen Fenster öffnet, den Bruttolohn abfragt und wie im Quellcode zu sehen die Beiträge ausrechnet.

import java.util.Scanner;

public class Lohnrechner3 {

  public static void main(String[] args) {

    double zahl;

    Scanner scan = new Scanner(System.in);

    System.out.print("Geben Sie hier Ihren Bruttolohn ein: ");

    zahl = scan.nextDouble();

    double lohn = (0);

    System.out.println("Bruttolohn = " + lohn);

    double lohnsteuer = 0.16 * lohn;

    System.out.println("Lohnsteuer = " + lohnsteuer);

    double krankenversicherung = 0.0765 * lohn;

    System.out.println("Krankenversicherung = " + krankenversicherung);

    double rentenversicherung = 0.0995 * lohn;

    System.out.println("Rentenversicherung = " + rentenversicherung);

    double arbeitslosenversicherung = 0.021 * lohn;

    System.out.println("Arbeitslosenversicherung = " + arbeitslosenversicherung);

    double pflegeversicherung = 0.011 * lohn;

    System.out.println("Pflegeversicherung = " + pflegeversicherung);

    double solidaritaetszuschlag = 0.055 * lohnsteuer;

    System.out.println("Abzuege prozentual von der Lohnsteuer - Solidaritaetzuschlag = " + solidaritaetszuschlag);

    double kirchensteuer = 0.08 * lohnsteuer;

    System.out.println("Abzuege prozentual von der Lohnsteuer - Kirchensteuer = " + kirchensteuer);

    double nettolohn = lohn - lohnsteuer - krankenversicherung - rentenversicherung - arbeitslosenversicherung - pflegeversicherung - solidaritaetszuschlag - kirchensteuer;

    System.out.println("Nettolohn = " + nettolohn);

  }

}

Was in der Eingabeaufforderung nach dieser Eingabe erscheint : Prompt/Verzeichnis java Lohnrechner3:

Geben Sie hier Ihren Bruttolohn ein: 10000

Bruttolohn = 0.0

Lohnsteuer = 0.0

Krankenversicherung = 0.0

Rentenversicherung = 0.0

Arbeitslosenversicherung = 0.0

Pflegeversicherung = 0.0

Abzuege prozentual von der Lohnsteuer - Solidaritaetzuschlag = 0.0

Abzuege prozentual von der Lohnsteuer - Kirchensteuer = 0.0

Nettolohn = 0.0

Liebe Grüße

Bild zu Frage
Computer, programmieren, Java, IntelliJ IDEA
IntelliJ: importiertes Package wird nicht gefunden?

Hallo,

ich habe ein kleines Test-Projekt in IntelliJ erstellt. Dazu habe ich über Project Structure -> Libraries -> Maven eine Bibliothek eingebunden. Diese finde ich auch als jar-Datei links im lib-Ordner. Will ich das Programm ausführen, erhalte ich den Compiler-Fehler, dass die von mir benutzen Packages nicht gefunden wurden.

Compiler-Ausgabe:

18:37:49: Executing task 'Main.main()'...
> Task :compileJava FAILED
C:[gekürzt]\src\main\java\Main.java:1: error: package org.firmata4j does not exist
import org.firmata4j.IODevice;
          ^
C:[gekürzt]\src\main\java\Main.java:2: error: package org.firmata4j.firmata does not exist
import org.firmata4j.firmata.FirmataDevice;
              ^
C:[gekürzt]\src\main\java\Main.java:12: error: cannot find symbol
    IODevice device = new FirmataDevice("COM3"); // using the name of a port
    ^
 symbol:  class IODevice
 location: class Main
C:[gekürzt]\src\main\java\Main.java:12: error: cannot find symbol
    IODevice device = new FirmataDevice("COM3"); // using the name of a port
               ^
 symbol:  class FirmataDevice
 location: class Main
4 errors
FAILURE: Build failed with an exception.
* What went wrong:
Execution failed for task ':compileJava'.
> Compilation failed; see the compiler error output for details.
* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.
* Get more help at https://help.gradle.org
BUILD FAILED in 2s
1 actionable task: 1 executed
Compilation failed; see the compiler error output for details.
18:37:52: Task execution finished 'Main.main()'.

_____________________________________________________________________________

Warum gibt erst der Compiler den Fehler aus, dass die Packages - warum auch immer - nicht gefunden werden konnten und nicht schon IntelliJ selbst?

Mein Java-Code:

import org.firmata4j.IODevice;
import org.firmata4j.firmata.FirmataDevice;
import java.io.IOException;

public class Main {
  public static void main(String[] args) throws IOException, InterruptedException {
    System.out.println("Moinsen!");

    IODevice device = new FirmataDevice("COM3"); // using the name of a port
    device.start(); // initiate communication to the device
    device.ensureInitializationIsDone(); // wait for initialization is done
  }
}
PC, Computer, Technik, programmieren, Java, IntelliJ IDEA
Intellij Teleport- command einbauen(Java und Maven)?
package system.Commands;

import org.bukkit.Bukkit;
import org.bukkit.ChatColor;
import org.bukkit.GameMode;
import org.bukkit.Location;
import org.bukkit.command.Command;
import org.bukkit.command.CommandExecutor;
import org.bukkit.command.CommandSender;
import org.bukkit.configuration.file.YamlConstructor;
import org.bukkit.entity.Player;
import org.jetbrains.annotations.NotNull;
import system.system.Main;
import system.vanish.Vanish;

import java.util.Vector;

public class VanishCommand implements CommandExecutor {

    @Override
    public boolean onCommand(@NotNull CommandSender sender, @NotNull Command command, @NotNull String label, @NotNull String[] args) {
        Vanish vanish = Main.getInstance().getVanishManager();



        if (sender instanceof Player) {
            Player player = (Player) sender;
            Location loc = null;
            if (vanish.isVanished(player)) {


                vanish.setVanished(player, false);
                player.setGameMode(GameMode.SURVIVAL);
                sender.sendMessage(ChatColor.GOLD + "Manetti is raus");
                assert loc != null;
                player.teleport(loc);


            } else {
                vanish.setVanished(player, true);

                loc = player.getLocation();

                player.setGameMode(GameMode.CREATIVE);
                sender.sendMessage(ChatColor.GOLD + "Support-Mode");


            }
            return true;


        }

        return false;
    }
}

Ich habe einen Vanish Command programmiert und möchte das wenn der Player den Command ausführt dass sich dann seine Coordinaten gemerkt werden und wenn er ihn noch einmal ausführt und ent-vanished wird er wieder zu den gemerkten Coordinaten teleportiert wird. Aber der Oben zu sehende Code funktioniert leider nicht.

programmieren, Java, Minecraft, IntelliJ IDEA