Модераторы: LSD, AntonSaburov
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Выполнение джар, из другого джарника 
:(
    Опции темы
Grizli
Дата 22.4.2012, 13:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 81
Регистрация: 30.3.2012

Репутация: нет
Всего: нет



Здравствуйте. У меня есть App1.jar и App2.jar, в App2.jar, который я хочу запустить из первого аплета у меня есть библиотеки, которые хранятся в самом приложении, при запуске App1.jar у меня идёт проверка на мд5 соответсвие App2.jar и если он не совпадает то первый аплет закачивает второй. После того, как прошла проверка App1.jar мне должен запустить App2.jar. Собственно в App1.jar я и пишу 
Код

 public static void startApp2()
    {
      File jar = new File(mainDir, "Launcher.jar");
      try
      {
        Runtime.getRuntime().exec("java -jar " + jar);
      }
      catch (Exception e)
      {
        e.printStackTrace();
        new JOptionPane();
        JOptionPane.showMessageDialog(null, e);
      }
    }

И вызываю его из мейн метода в первом аплете. Первый раз, когда у меня первый аплет скачал второй всё запустилось, но последующие разы уже ничего не запускается...

Вот мета-инф второго приложения
Код

Manifest-Version: 1.0
Rsrc-Class-Path: ./ rome-1.0.jar com.springsource.org.apache.commons.c
 odec-1.4.0.jar swing-layout-1.0.2.jar snakeyaml-1.8.jar com.springsou
 rce.com.sun.syndication-1.0.0.RC1.jar jdom-1.1.3.jar jcommander-1.7.j
 ar
Class-Path: .
Rsrc-Main-Class: org.spoutcraft.launcher.Main
Main-Class: org.eclipse.jdt.internal.jarinjarloader.JarRsrcLoader

PM MAIL   Вверх
Grizli
Дата 22.4.2012, 15:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 81
Регистрация: 30.3.2012

Репутация: нет
Всего: нет



Хотя-бы я могу через ClassLoader загрузить мейн класс второго алпета, что-бы приложение запустилось? Если да, то как?
PM MAIL   Вверх
Grizli
Дата 22.4.2012, 16:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 81
Регистрация: 30.3.2012

Репутация: нет
Всего: нет



Попробовал вот так
Код

public static void startApp2()
    {
      File jar = new File(mainDir, "Launcher.jar");
      URL[] urls = new URL[1];
      try
      {
        urls[0] = jar.toURI().toURL();
      }
      catch (MalformedURLException e) {
        e.printStackTrace();
        System.out.print("Чтот случилось... Остановка...");
        System.exit(0);
      }
      ClassLoader classLoad = new URLClassLoader(urls);
      Class mainClass = null;
      try {
        mainClass = classLoad.loadClass("org.eclipse.jdt.internal.jarinjarloader.JarRsrcLoader");
      }
      catch (ClassNotFoundException e)
      {
        e.printStackTrace();
        System.out.print("Чтот случилось... Остановка...");
        System.exit(0);
      }
      catch (SecurityException e) {
        e.printStackTrace();
        System.out.print("Чтот случилось... Остановка...");
        System.exit(0);
      }

      try
      {
        mainClass.newInstance();
      }
      catch (InstantiationException e)
      {
        e.printStackTrace();
        System.out.print("Чтот случилось... Остановка...");
        System.exit(0);
      }
      catch (IllegalAccessException e) {
        e.printStackTrace();
        System.out.print("Чтот случилось... Остановка...");
        System.exit(0);
      }
      catch (Exception e) {
        e.printStackTrace();
        System.out.print("Чтот случилось... Остановка...");
        System.exit(0);
      }
    }


Не работает...
PM MAIL   Вверх
Grizli
Дата 22.4.2012, 17:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 81
Регистрация: 30.3.2012

Репутация: нет
Всего: нет



Спасибо всем, решил сам...
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Java"
LSD   AntonSaburov
powerOn   tux
  • Прежде, чем задать вопрос, прочтите это!
  • Книги по Java собираются здесь.
  • Документация и ресурсы по Java находятся здесь.
  • Используйте теги [code=java][/code] для подсветки кода. Используйтe чекбокс "транслит", если у Вас нет русских шрифтов.
  • Помечайте свой вопрос как решённый, если на него получен ответ. Ссылка "Пометить как решённый" находится над первым постом.
  • Действия модераторов можно обсудить здесь.
  • FAQ раздела лежит здесь.

Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, tux.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Java EE (J2EE) и Spring | Следующая тема »


 




[ Время генерации скрипта: 0.0514 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.