Страницы

Поиск по вопросам

вторник, 13 ноября 2018 г.

Параметр манифеста при запуске jar файла

Прошу отнестить с пониманием, поскольку я новичок в Java. Пытался запустить jar файл в Linux с помощью команды ./java -jar /Samplejavaprogram/Sample.jar и получил в результате сообщение no main manifest attribute, in /Samplejavaprogram/Sample.jar Подскажите, что именно надо добавить в команду (хотелось бы знать конкретный текст), чтобы выполнить java программу. Привожу текст программы (может быть в нем причина) package org.myorg;
import java.io.*; import java.util.*; import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Statement; import java.util.logging.Level; import java.util.*;
public class Sample { public static void main (String[] args) throws IOException { int CountComputers; FileInputStream fstream = new FileInputStream( "/export/hadoop-1.0.1/bin/countcomputers.txt"); DataInputStream input = new DataInputStream(fstream); BufferedReader br = new BufferedReader(new InputStreamReader(input)); String result=br.readLine(); CountComputers=Integer.parseInt(result); input.close(); fstream.close(); Connection con = null; Statement st = null; ResultSet rs = null; String url = "jdbc:postgresql://192.168.1.8:5432/NexentaSearch"; String user = "postgres"; String password = "valter89"; ArrayList paths = new ArrayList(); try { con = DriverManager.getConnection(url, user, password); st = con.createStatement(); rs = st.executeQuery("select path from tasks order by id"); while (rs.next()) { paths.add(rs.getString(1)); }; PrintWriter zzz = null; try { zzz = new PrintWriter(new FileOutputStream("/export/hadoop-1.0.1/bin/readwaysfromdatabase.txt")); } catch(FileNotFoundException e) { System.out.println("Error"); System.exit(0); } for (int i=0; i"); } zzz.close();
} catch (SQLException e) { System.out.println("Connection Failed! Check output console"); e.printStackTrace(); } } }


Ответ

Запускаете вы правильно (если забыть про слеш в начале пути к jar; у вас что, папка Samplejavaprogram в корневой директории лежит?). Ошибка в манифесте jar-файла, который вы пытаетесь запустить. Скорее всего отсутствует свойство Main-Class. Проверьте, чтобы в вашей Sample.jar в папке META-INF был файл MANIFEST.MF, а в нём строка Main-Class: путь.к.вашему.главному.классу.ГлавныйКласс

Комментариев нет:

Отправить комментарий