Jakarta ee Primefaces和Omnifaces ClassNotFound来自GlassFish的警告,只是警告,应用程序工作正常

Jakarta ee Primefaces和Omnifaces ClassNotFound来自GlassFish的警告,只是警告,应用程序工作正常,jakarta-ee,primefaces,jsf-2,glassfish,omnifaces,Jakarta Ee,Primefaces,Jsf 2,Glassfish,Omnifaces,我们有一个JavaEE应用程序,其中我们将JSF与Omnifaces(v2.6.3)和Primefaces(v6.1)一起使用,部署在GlassFishv4.1.2上 尽管应用程序运行正常(我可以导航页面并使用它们),但日志中仍有一些警告,涉及在omnifaces和primefaces中都找不到的某些类。是的,关于“ClassNotFound异常”的警告,因此它本身不是异常,只是警告,在警告之后,服务器继续正常运行并成功部署我的应用程序。 Eclipse和asadmin都会手动发生这种情况 应用

我们有一个JavaEE应用程序,其中我们将JSF与Omnifaces(v2.6.3)和Primefaces(v6.1)一起使用,部署在GlassFishv4.1.2上

尽管应用程序运行正常(我可以导航页面并使用它们),但日志中仍有一些警告,涉及在omnifaces和primefaces中都找不到的某些类。是的,关于“ClassNotFound异常”的警告,因此它本身不是异常,只是警告,在警告之后,服务器继续正常运行并成功部署我的应用程序。 Eclipse和asadmin都会手动发生这种情况

应用程序的结构如下(我有一个EJB应用程序、一个web服务应用程序和一个触发警告的JSF应用程序):

如果我移动EAR的
lib
目录中的primefaces库,那么与primefaces相关的警告就会消失。 虽然这不是一个合适的解决方案,但是primefaces对于JSF应用程序来说是“本地的”,omnifaces也是如此(如果我尝试移动omnifaces库,我会得到一些初始化错误,应用程序会中断)

这种行为的原因是什么?我怎样才能摆脱这些警告呢? 可能有潜在的虫子吗

警告(还有更多,这只是其中的一小部分):

乐: 我忘了提到,上面的设置在使用
asadmin重新部署时也会触发此操作:

[glassfish 4.1] [WARNING] [NCLS-DEPLOYMENT-00023] [javax.enterprise.system.tools.deployment.common] [tid: _ThreadID=47 _ThreadName=admin-listener(2)] [timeMillis: 1511441893194] [levelValue: 900] [[
  Ignoring JSFapp_war/ because the containing archive C:\glassfish4\glassfish\domains\domain1\applications\EAR recorded it as a pre-existing stale file]]
陈旧文件正是JSF战争中的LIB。 如果我在耳朵里移动primefaces,那么只有omnifaces在重新部署时保持陈旧。
这是怎么回事?

不要部署源代码和javadoc JAR。它们只用于构建时,不用于运行时。同意,但这不是原因。
2017-11-24T08:18:22.264+0200|Warning: Unable to load class org.primefaces.component.tieredmenu.TieredMenuRenderer, reason: java.lang.ClassNotFoundException: org.primefaces.component.tieredmenu.TieredMenuRenderer
2017-11-24T08:18:22.270+0200|Warning: Unable to load class org.primefaces.mobile.renderkit.BaseMenuRenderer, reason: java.lang.ClassNotFoundException: org.primefaces.mobile.renderkit.BaseMenuRenderer
2017-11-24T08:18:22.280+0200|Warning: Unable to load class org.primefaces.component.contextmenu.ContextMenuRenderer, reason: java.lang.ClassNotFoundException: org.primefaces.component.contextmenu.ContextMenuRenderer
2017-11-24T08:18:22.284+0200|Warning: Unable to load class org.primefaces.component.menubar.MenubarRenderer, reason: java.lang.ClassNotFoundException: org.primefaces.component.menubar.MenubarRenderer
2017-11-24T08:18:22.287+0200|Warning: Unable to load class org.primefaces.component.slidemenu.SlideMenuRenderer, reason: java.lang.ClassNotFoundException: org.primefaces.component.slidemenu.SlideMenuRenderer
2017-11-24T08:18:22.293+0200|Warning: Unable to load class org.primefaces.mobile.renderkit.MenuRenderer, reason: java.lang.ClassNotFoundException: org.primefaces.mobile.renderkit.MenuRenderer
2017-11-24T08:18:22.297+0200|Warning: Unable to load class org.primefaces.mobile.renderkit.TabMenuRenderer, reason: java.lang.ClassNotFoundException: org.primefaces.mobile.renderkit.TabMenuRenderer
2017-11-24T08:18:22.301+0200|Warning: Unable to load class org.primefaces.component.growl.GrowlRenderer, reason: java.lang.ClassNotFoundException: org.primefaces.component.growl.GrowlRenderer
2017-11-24T08:18:22.304+0200|Warning: Unable to load class org.primefaces.component.message.MessageRenderer, reason: java.lang.ClassNotFoundException: org.primefaces.component.message.MessageRenderer
2017-11-24T08:18:22.306+0200|Warning: Unable to load class org.primefaces.component.messages.MessagesRenderer, reason: java.lang.ClassNotFoundException: org.primefaces.component.messages.MessagesRenderer
2017-11-24T08:18:22.313+0200|Warning: Unable to load class org.primefaces.mobile.renderkit.GrowlRenderer, reason: java.lang.ClassNotFoundException: org.primefaces.mobile.renderkit.GrowlRenderer
2017-11-24T08:18:22.315+0200|Warning: Unable to load class org.omnifaces.component.tree.TreeInsertChildren, reason: java.lang.ClassNotFoundException: org.omnifaces.component.tree.TreeInsertChildren
2017-11-24T08:18:22.318+0200|Warning: Unable to load class org.omnifaces.component.validator.ValidateEqual, reason: java.lang.ClassNotFoundException: org.omnifaces.component.validator.ValidateEqual
2017-11-24T08:18:22.320+0200|Warning: Unable to load class org.omnifaces.component.validator.ValidateAll, reason: java.lang.ClassNotFoundException: org.omnifaces.component.validator.ValidateAll
2017-11-24T08:18:22.322+0200|Warning: Unable to load class org.omnifaces.component.output.ResourceInclude, reason: java.lang.ClassNotFoundException: org.omnifaces.component.output.ResourceInclude
2017-11-24T08:18:22.335+0200|Warning: Unable to load class org.omnifaces.component.validator.ValidateOne, reason: java.lang.ClassNotFoundException: org.omnifaces.component.validator.ValidateOne
2017-11-24T08:18:22.338+0200|Warning: Unable to load class org.omnifaces.component.validator.ValidateMultiple, reason: java.lang.ClassNotFoundException: org.omnifaces.component.validator.ValidateMultiple
2017-11-24T08:18:22.368+0200|Warning: Unable to load class org.omnifaces.component.validator.ValidateAllOrNone, reason: java.lang.ClassNotFoundException: org.omnifaces.component.validator.ValidateAllOrNone
2017-11-24T08:18:22.370+0200|Warning: Unable to load class org.omnifaces.component.messages.OmniMessages, reason: java.lang.ClassNotFoundException: org.omnifaces.component.messages.OmniMessages
2017-11-24T08:18:22.372+0200|Warning: Unable to load class org.omnifaces.component.output.GraphicImage, reason: java.lang.ClassNotFoundException: org.omnifaces.component.output.GraphicImage
2017-11-24T08:18:22.377+0200|Warning: Unable to load class org.omnifaces.component.output.ConditionalComment, reason: java.lang.ClassNotFoundException: org.omnifaces.component.output.ConditionalComment
[glassfish 4.1] [WARNING] [NCLS-DEPLOYMENT-00023] [javax.enterprise.system.tools.deployment.common] [tid: _ThreadID=47 _ThreadName=admin-listener(2)] [timeMillis: 1511441893194] [levelValue: 900] [[
  Ignoring JSFapp_war/ because the containing archive C:\glassfish4\glassfish\domains\domain1\applications\EAR recorded it as a pre-existing stale file]]