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

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Запуск из версии ниже компиляцию версии выше. 
:(
    Опции темы
Viroman
Дата 10.7.2010, 00:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


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

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



Здравствуйте дорогие форумчане, я вот не знаю, сталкивался ли кто с проблемой, ну даже не проблема, а фишка следующего рода.
Есть программа, которая работает из под джава 1.2 и так и должно оставаться, то есть программа должна по прежнему под джава 1.2 воспроизводиться, если таковым окажется окружение.
Далее, есть реализация метода, который присутствует только начиная с джава 1.4, для версии 1.2 эта реализация обходными путями провизорная, то есть чтобы было, на более старших версиях, значит 1.4 это должно уже воспроизводиться неокольным путём, а напрямую через метод.

Вообще то вопрос состоит не в том, как это реализовать, это муздыханье через жопу я уже реализовал.

Код


String myOS = System.getProperty("os.name");
if(myOS.startsWith("1.2") || myOS.startsWith("1.3")) {
//делай обходное решение
} else {
////главный код
        try {
         Class cl = Class.forName("a");
         Method m = cl.getMethod("main", new Class[]{ String[].class });
         String[] newaString = { "" };
         Object retobj = m.invoke(null, new Object[]{newaString});
         Integer retval = (Integer)retobj;
         int tval = retval.intValue();
         if(tval == 0) {
           System.out.println("Main method returned 0");
         } else if(tval == 1) {
           System.out.println("Main method returned 1");
         }
}

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

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

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


 




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


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

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