powered by simpleCommunicator - 2.0.56     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Java [игнор отключен] [закрыт для гостей] / Как узнать что deprecated ?
23 сообщений из 23, страница 1 из 1
Как узнать что deprecated ?
    #39703007
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
пишет такое
Код: plaintext
1.
Singleton.java uses or overrides a deprecated API.
Note: Recompile with -Xlint:deprecation for details.
как узнать без Recompile , что deprecated ?
...
Рейтинг: 0 / 0
Как узнать что deprecated ?
    #39703013
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
в общем и в коде отмечается :)

Singleton.java:103: warning: [deprecation] newInstance() in Class has been deprecated
Object obj = cla.newInstance();

продолжу тут
есть код
Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
                ListCommand = new HashMap<>();
                Class cla;

                File dir = new File(web_location + "/WEB-INF/classes/ws/pages");
                String[] files = dir.list();
                for (String file : files) {
                    String[] ss = file.split("\\.");
                    cla =  Class.forName("ws.pages." + ss[0]);

                    Object obj = cla.newInstance();   //  newInstance() -  deprecated
                   
                    Method[] methods = cla.getMethods();
                    for (Method method : methods) {
                        if (COMMAND.matcher(method.getName()).find()) {
                            ListCommand.put(method.getName(), obj);
                        }
                    }
                }


как избавиться от deprecated?
...
Рейтинг: 0 / 0
Как узнать что deprecated ?
    #39703020
cossack5
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадя,

@SuppressWarnings("deprecation")
...
Рейтинг: 0 / 0
Как узнать что deprecated ?
    #39703022
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В фазе компилляции просто всегда указывай -Xlint:deprecation

В рантайме можно рефлексировать аннотации.
...
Рейтинг: 0 / 0
Как узнать что deprecated ?
    #39703029
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mayton,
ну это избавит только от вывода сообщения.
а если уберут в следующей версии?
...
Рейтинг: 0 / 0
Как узнать что deprecated ?
    #39703030
Basil A. Sidorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадяа если уберут в следующей версии?До Java8 включительно "устарело" == "не рекомендуется". Сам функцонал остаётся, но не развивается.
С "модулярных" (Java9+) добавилось "forRemove=true". Это и означает "обязательно выкинем. Когда-нибудь потом".

Как с этим жить, с моей кочки зрения - вполне понятно и очевидно: есть, как минимум, три варианта. За деньги - больше.
...
Рейтинг: 0 / 0
Как узнать что deprecated ?
    #39703034
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадяmayton,
ну это избавит только от вывода сообщения.
а если уберут в следующей версии?
Так не используй. Я всегда находил альтернативу.
...
Рейтинг: 0 / 0
Как узнать что deprecated ?
    #39703043
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maytonТак не используй. Я всегда находил альтернативу.
так я когда спрашивал
вадякак избавиться от deprecated?
и подразумевал - что можно использовать...
потому как само предупреждение не волнует....
Basil A. SidorovКак с этим жить, с моей кочки зрения - вполне понятно и очевидно: есть, как минимум, три варианта. За деньги - больше.меня интересует как и чем можно это заменить из новых версий.
не сам , конкретный newInstance, а логику, реализацию
...
Рейтинг: 0 / 0
Как узнать что deprecated ?
    #39703052
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадяменя интересует как и чем можно это заменить из новых версий.
не сам , конкретный newInstance, а логику, реализацию
Просто зайди в API там текстом пишут на что заменить.
...
Рейтинг: 0 / 0
Как узнать что deprecated ?
    #39703055
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maytonПросто зайди в API там текстом пишут на что заменить.я не смог найти...
дай ссылку.
...
Рейтинг: 0 / 0
Как узнать что deprecated ?
    #39703056
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maytonПросто зайди в API там текстом пишут на что заменить.то что нашёл - там стока кода....
вместо 1 строки...
...
Рейтинг: 0 / 0
Как узнать что deprecated ?
    #39703069
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Формально - тут описано.

https://docs.oracle.com/javase/9/docs/api/deprecated-list.html#method

The call


Код: java
1.
 clazz.newInstance()



can be replaced by


Код: java
1.
2.
clazz.getDeclaredConstructor().newInstance()
 
...
Рейтинг: 0 / 0
Как узнать что deprecated ?
    #39703143
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mayton,

нашел тоже, но в другом месте..... пытаюсь проверить:)

следующий шаг

NB 9, JDK10,
компилирую
получаю
Код: plaintext
javac: option -Xbootclasspath/p: not allowed with target 1.10
...
Рейтинг: 0 / 0
Как узнать что deprecated ?
    #39703155
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
У тебя микс нестандартных опций девятки и десятый компиллятор. Не знаю что он значит но похожие changes
есть тут. Надо читать разбираться.

https://www.oracle.com/technetwork/java/javase/10-relnote-issues-4108729.html

Попробуй понизить версию компиллятора.
...
Рейтинг: 0 / 0
Как узнать что deprecated ?
    #39703160
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maytonПопробуй понизить версию компиллятора.могу понизить до java 8
а вот как перейти на 10?
jdk9 нету...
...
Рейтинг: 0 / 0
Как узнать что deprecated ?
    #39703163
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Не уверен но я-б попробовал поиграть с параметрами -source=... -target=.

Кстати я не уверен что 1.10 это десятка но похоже детектируется как синоним 10
...
Рейтинг: 0 / 0
Как узнать что deprecated ?
    #39703167
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maytonНе уверен но я-б попробовал поиграть с параметрами -source=... -target=.дак вот как это сделать в NB?
...
Рейтинг: 0 / 0
Как узнать что deprecated ?
    #39703175
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А какой тип билда? Maven? Gradle?
...
Рейтинг: 0 / 0
Как узнать что deprecated ?
    #39703188
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maytonА какой тип билда? Maven? Gradle?ant
...
Рейтинг: 0 / 0
Как узнать что deprecated ?
    #39703198
Фотография Пылинка
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maytonУ тебя микс нестандартных опций девятки и десятый компиллятор. Не знаю что он значит но похожие changes
есть тут. Надо читать разбираться.

https://www.oracle.com/technetwork/java/javase/10-relnote-issues-4108729.html

Попробуй понизить версию компиллятора.
Нет, Xbootclasspath/p убрали в 9-й версии. И там даже написано куда смотреть.
...
Рейтинг: 0 / 0
Как узнать что deprecated ?
    #39703318
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ПылинкаНет, Xbootclasspath/p убрали в 9-й версии. И там даже написано куда смотреть.чет я не нашел конкретного решения там...
перешёл на maven - всё заработало.
видимо для ant надо ждать новый nb....
...
Рейтинг: 0 / 0
Как узнать что deprecated ?
    #39703407
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадяПылинкаНет, Xbootclasspath/p убрали в 9-й версии. И там даже написано куда смотреть.чет я не нашел конкретного решения там...
перешёл на maven - всё заработало.
видимо для ant надо ждать новый nb....
Я бы на твоём месте поразбирался где в Ант собака порылась. Ant - это достаточно low-level
инструмент приближенный к command-line и если ты где-то захардкодил Xbootclasspath то
должен быть путь как его переписать.

Для чувства собственной уверенности тык-скыть.
...
Рейтинг: 0 / 0
Как узнать что deprecated ?
    #39703442
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maytonЯ бы на твоём месте поразбирался где в Ант собака порылась. Ant - это достаточно low-level
инструмент приближенный к command-line и если ты где-то захардкодил Xbootclasspath то
должен быть путь как его переписать.

Для чувства собственной уверенности тык-скыть.
там в build-impl.xml 1500 строк.
закоментировал
Код: xml
1.
2.
3.
4.
5.
6.
7.
<!--        <path id="endorsed.classpath.path" path="${endorsed.classpath}"/>
         <condition else="" property="endorsed.classpath.cmd.line.arg" value="-Xbootclasspath/p:'${toString:endorsed.classpath.path}'">
            <and>
                <isset property="endorsed.classpath"/>
                <length length="0" string="${endorsed.classpath}" when="greater"/>
            </and>
        </condition>-->

и
Код: xml
1.
<!--<compilerarg line="${endorsed.classpath.cmd.line.arg}"/>-->


и всё запустилось...
...
Рейтинг: 0 / 0
23 сообщений из 23, страница 1 из 1
Форумы / Java [игнор отключен] [закрыт для гостей] / Как узнать что deprecated ?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]