Каталог столбцов
- Пришло время обновить преимущества java11-01-jdk11 и опции jdk
- Пора обновить java11-02-Upgrade jdk11 и шагнуть на яму
- Пришло время обновить настройки параметров JVM виртуальной машины java11-03
- Пришло время обновить java11-04 http2 Clear Text (h2c) для связи http2 в микросервисах.
- Пришло время обновить java11 - 05 Препятствие и решение проблем связи h2c внутри микросервисов
предисловие
Сразу после вышесказанного автор перечислит наш апгрейд доJava11
Встречающиеся ямы (если вы также столкнулись с другими проблемами, оставьте сообщение для обмена).
1. Проблема со шрифтом
В среде Linux Java11 будет использовать шрифты в некоторых функциях кода проверки и Excel, что вызывает проблему со шрифтами Java11.
решение:
- Создайтеfontconfig.propertiesдокумент
существует
$JAVA_HOME/lib
Создано в каталогеfontconfig.propertiesдокумент.
Содержание следующее:
version=1
sequence.allfonts=default
- Установить шрифты
sudo yum install fontconfig
sudo yum install urw-fonts
sudo fc-cache -f
Подробности можно посмотретьopen jdk github issues
:GitHub.com/adopt открыть JD…
2. javax.xml.bind не существует
Java11 удалил модули Java EE, включая java.xml.bind (JAXB).
Подскажите при запуске
WARNING: Illegal reflective access by com.thoughtworks.xstream.core.util.Fields (file:/com/thoughtworks/xstream/xstream/1.4.10/xstream-1.4.10.jar) to field java.util.TreeMap.comparator
Решение состоит в том, что вы можете вручную добавить соответствующие зависимости.
<dependency>
<groupId>javax.xml.bind</groupId>
<artifactId>jaxb-api</artifactId>
<version>2.3.0</version>
</dependency>
<dependency>
<groupId>com.sun.xml.bind</groupId>
<artifactId>jaxb-core</artifactId>
<version>2.3.0</version>
</dependency>
<dependency>
<groupId>com.sun.xml.bind</groupId>
<artifactId>jaxb-impl</artifactId>
<version>2.3.0</version>
</dependency>
Подробности можно посмотреть по адресу:stackoverflow.com/questions/5…
3. Ошибка компиляции
Следующие классы не найдены из-за удаления части API
sun.misc.BASE64Encoder、sun.misc.BASE64Decoder
Шаги решения: используйтеjava.util.Base64.Encoder
,java.util.Base64.Decoder
заменять
4. Не запускается встроенный контейнер
когда мы используемEureka
Как реестр из-за удаления зависимых модулей JAXB.
The JAXB modules which the Eureka server depends upon were removed in JDK 11. If you intend to use JDK 11 when running a Eureka server you must include these dependencies in your POM or Gradle file.
Необходимо вручную импортировать:
<dependency>
<groupId>org.glassfish.jaxb</groupId>
<artifactId>jaxb-runtime</artifactId>
</dependency>
утверждение
Эта серия статей подготовленаСлюда основного компонента микросервисаавтортехнология мечтыв соавторстве, Если есть какая-либо ссылка или перепечатка, пожалуйста, сохраните оригинального автора и укажите источник.