błąd po stworzeniu pliku jar

0

Używam eclipse i gdy uruchamiam za pomocą "Run" to wszystko działa:

import javax.swing.JFrame;

public class Okno{
    
    static public void main(String args[]){
        JFrame frame = new JFrame("Okno");
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        frame.setSize(500, 300);
        frame.setVisible(true);
    }
}

a jak wyeksportowałem do "runnable jar" to wyskoczył błąd:
"could not find or load main class"

0

A co wybrałeś w okienku Launch configuration:?

0

Plik jar posiada coś takiego jak manifest. W momencie gdy eksportujesz projekt do pliku jar należy zaznaczyć w konfiguracji, która klasa zostanie zapisana w manifeście jako główna klasa programu.

Sprawdź jeszcze jedną opcję

$ java -jar plik.jar Okno

W tym przypadku ostatni parametr zostanie potraktowany jako nazwa klasy do uruchomienia. Przy czym jeżeli klasa jest w pakiecie należy podać pełną kwalifikowaną nazwę.

0

A może za pomocą mavena:

<!-- jar file building -->
  <build>
    <plugins>
      <plugin>
        <artifactId>maven-assembly-plugin</artifactId>
        <configuration>
          <descriptorRefs>
            <descriptorRef>jar-with-dependencies</descriptorRef>
          </descriptorRefs>
          <archive>
            <manifest>
              <mainClass>[Nazwa klasy z metodą main]</mainClass>
            </manifest>
          </archive>
        </configuration>
      </plugin>
    </plugins>
  </build>
0
Koziołek napisał(a):

Sprawdź jeszcze jedną opcję

$ java -jar plik.jar Okno

Uruchomiłem bez nazwy klasy:

java -jar plik.jar

i zadziałało bez problemu.

Błąd musi być gdzieś w systemie. Sprawdziłem zmienne systemowe:
JAVA_HOME: C:\Program Files (x86)\Java\jre7

Natomiast błąd po dwukrotnym kliknięciu na ikonę pokazuje się w oknie:
C:\Program Files (x86)\Java\jre7\bin\java.exe

Patrząc na te ścieżki, to uruchamianie za komendy "cmd" i z kliknięcia powinno odbywać się tak samo?

0

Odinstalowanie i ponowne zainstalowanie java pomogło -.-

1 użytkowników online, w tym zalogowanych: 0, gości: 1