AWS'de Tomcat 8.0.39 altında mükemmel şekilde çalışan bir Spring Boot WAR uygulamasına sahibim. sudo service tomcat8 stop
yayınladıktan sonra Tomcat 8.0.41 ile sudo yum update
sürümüne yükseltme yapın ve örneği yeniden başlatın, uygulama başlamıyor.Tomcat 8.0.39'dan 8.0.41'e yükseltme 'taranamadı' hatalarıyla sonuçlanıyor
javax.annotation-api.jar
jsr181-api.jar
jaxb-api.jar
javax.xml.soap-api.jar
FastInfoset.jar
mimepull.jar
saaj-impl.jar
stax2-api.jar
woodstox-core-asl.jar
jaxb-core-2.2.10-b140802.1033.jar
jaxb-api-2.2.12-b140109.1041.jar
istack-commons-runtime-2.19.jar
txw2-2.2.10-b140802.1033.jar
hk2-core.jar
class-model.jar
config.jar
auto-depends.jar
javax.inject.jar
hk2-api.jar
osgi-resource-locator.jar
tiger-types.jar
bean-validator.jar
jtype.jar
üzerinde herhangi bir öneriniz nasıl bu sorunu gidermek için: Tomcat hakkında şikayet Burada
19-Feb-2017 10:27:15.326 WARNING [localhost-startStop-1] org.apache.tomcat.util.
scan.StandardJarScanner.scan Failed to scan [file:/usr/share/java/tomcat8/javax.
annotation-api.jar] from classloader hierarchy
java.io.FileNotFoundException: /usr/share/java/tomcat8/javax.annotation-api.jar
(No such file or directory)
dosyalar şunlardır: catalina günlük dosyasında, ben Çeşidi istisnalar bir ton görüyor musunuz?
Güncelleme # 1:
yukarıdaki dosyalardan bazılarıjaxws-ri
aittir. Tomcat'ın lib
dizinine kopyalanan JAX-WS RI 2.2.10 lib
dizinindeki kavanozlardan bazılarının (10) olduğu (10) olduğu ortaya çıktı. Eksik 13 kavanoz kopyaladıktan sonra, Tomcat catalina günlük dosyasında şikayetçi dosyaların listesi küçüldü. tarayıcı gibi günlük dosyasında birkaç kez tekrarlanır yukarıdaki dosyalar için
jaxb-core-2.2.10-b140802.1033.jar
jaxb-api-2.2.12-b140109.1041.jar
istack-commons-runtime-2.19.jar
txw2-2.2.10-b140802.1033.jar
hk2-core.jar
class-model.jar
config.jar
auto-depends.jar
javax.inject.jar
hk2-api.jar
osgi-resource-locator.jar
tiger-types.jar
bean-validator.jar
jtype.jar
(İstisnalar görünüyor başlangıçta tekrar tekrar başlatıldı, belki de farklı sınıf yollarını taramak.)
Bu, 8.0.39'dan 8.0.41'e geçişle Tomcat'in, başvurulan tüm kılavuzların varlığı konusunda aniden çok seçici olduğunu söyler. Birçoğu olmadan mükemmel para cezası. Buna ek olarak, Tomcat bazı kavanozların spesifik yapıları hakkında çok özel görünmektedir (örneğin, yukarıdaki jaxb-core...
ve jaxb-api...
kavanozlarına bakınız).
Şimdi, bunu düzeltmek için tüm bu eksik kavanozları bulup Tomcat'ın lib
dizinine kopyalayabilirim. Ancak, config.jar
gibi jenerik isimler veya eksik sürüm numaraları nedeniyle bazılarının uygun kaynağını temin etmenin hiçbir yolunu görmüyorum.
Yani, Tomcat'in scan.StandardJarScanner.scan
tüm bu kavanozlar hakkında bu kadar seçici olmasını engellemenin bir yolu var mı?
Güncelleme # 2:
Bu Tomcat 8.0.38 yılında, bir ayar kavanoz tarama, true
hangi varsayılan değerini kontrol eklendi çıkıyor. kapalı tarayarak bırakmak için context.xml
aşağıdaki satırı ekleyin:
<Context>
...
<JarScanner scanManifest="false"/>
</Context>
, Provide an option to disable processing of Class-Path entry in a jar's manifest file bakın. Bir hata Tomcat 8 JAR MANIFEST.MF
dosyada Class-Path
başlığı yok saydığı vardı
Dosyalar mevcut değil. Eğer Tomcat 8.0.41 onları gerektirirse (ve 8.0.39 açıkçası yapmadıysa), o zaman “yum güncelleme” ile gelmelidirler ama görünüşe göre değillerdi. – user1408140
Neyin yüklü olduğunu görmek ve dosyaların gerçekten eksik ve beklenmedik bir yerde olmadığından emin olmak için 'rpm -ql tomcat | more ile başlayın. –