Errors

2009-12-3 0:25:10 org.apache.catalina.core.StandardContext filterStart
严重: Exception starting filter struts2
Caught exception while loading file struts-default.xml - [unknown location]
    at com.opensymphony.xwork2.config.providers.XmlConfigurationProvider.loadConfigurationFiles(XmlConfigurationProvider.java:839)
    at com.opensymphony.xwork2.config.providers.XmlConfigurationProvider.loadDocuments(XmlConfigurationProvider.java:131)
    at com.opensymphony.xwork2.config.providers.XmlConfigurationProvider.init(XmlConfigurationProvider.java:100)
    at com.opensymphony.xwork2.config.impl.DefaultConfiguration.reload(DefaultConfiguration.java:130)
    at com.opensymphony.xwork2.config.ConfigurationManager.getConfiguration(ConfigurationManager.java:52)
    at org.apache.struts2.dispatcher.Dispatcher.init_PreloadConfiguration(Dispatcher.java:395)
    at org.apache.struts2.dispatcher.Dispatcher.init(Dispatcher.java:452)
    at org.apache.struts2.dispatcher.FilterDispatcher.init(FilterDispatcher.java:205)
    at org.apache.catalina.core.ApplicationFilterConfig.getFilter(ApplicationFilterConfig.java:275)
    at org.apache.catalina.core.ApplicationFilterConfig.setFilterDef(ApplicationFilterConfig.java:397)
    at org.apache.catalina.core.ApplicationFilterConfig.<init>(ApplicationFilterConfig.java:108)
    at org.apache.catalina.core.StandardContext.filterStart(StandardContext.java:3709)
    at org.apache.catalina.core.StandardContext.start(StandardContext.java:4363)
    at org.apache.catalina.startup.HostConfig.checkResources(HostConfig.java:1116)
    at org.apache.catalina.startup.HostConfig.check(HostConfig.java:1214)
    at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:293)
    at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117)
    at org.apache.catalina.core.ContainerBase.backgroundProcess(ContainerBase.java:1337)
    at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1601)
    at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1610)
    at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.run(ContainerBase.java:1590)
    at java.lang.Thread.run(Thread.java:619)
Caused by: java.lang.ClassCastException: org.apache.xerces.parsers.XML11Configuration cannot be cast to org.apache.xerces.xni.parser.XMLParserConfiguration
    at org.apache.xerces.parsers.DOMParser.<init>(Unknown Source)
    at org.apache.xerces.parsers.DOMParser.<init>(Unknown Source)
    at org.apache.xerces.jaxp.DocumentBuilderImpl.<init>(Unknown Source)
    at org.apache.xerces.jaxp.DocumentBuilderFactoryImpl.newDocumentBuilder(Unknown Source)
    at com.sun.org.apache.xalan.internal.xsltc.trax.SAX2DOM.<init>(SAX2DOM.java:69)
    at com.sun.org.apache.xalan.internal.xsltc.runtime.output.TransletOutputHandlerFactory.getSerializationHandler(TransletOutputHandlerFactory.java:187)
    at com.sun.org.apache.xalan.internal.xsltc.trax.TransformerImpl.getOutputHandler(TransformerImpl.java:392)
    at com.sun.org.apache.xalan.internal.xsltc.trax.TransformerHandlerImpl.setResult(TransformerHandlerImpl.java:137)
    at com.opensymphony.xwork2.util.DomHelper$DOMBuilder.setup(DomHelper.java:213)
    at com.opensymphony.xwork2.util.DomHelper$DOMBuilder.<init>(DomHelper.java:198)
    at com.opensymphony.xwork2.util.DomHelper$DOMBuilder.<init>(DomHelper.java:189)
    at com.opensymphony.xwork2.util.DomHelper$DOMBuilder.<init>(DomHelper.java:175)
    at com.opensymphony.xwork2.util.DomHelper.parse(DomHelper.java:115)
    at com.opensymphony.xwork2.config.providers.XmlConfigurationProvider.loadConfigurationFiles(XmlConfigurationProvider.java:830)
    ... 21 more
2009-12-3 0:25:10 org.apache.catalina.core.StandardContext start
严重: Error filterStart

解决方案:移除xerces.jar

<think>好的,我现在需要回答用户关于GCC的-Wfatal-errors编译选项的作用和用法的问题。首先,我要确保自己对这个选项有正确的理解。 我记得,在GCC编译器中,-W选项通常用于启用警告,而有些选项会影响编译过程的行为。-Wfatal-errors听起来像是在遇到错误时立即停止,可能不仅仅是警告。需要确认这一点。 查阅GCC文档或相关资料,确认-Wfatal-errors的作用。根据记忆,当使用这个选项时,编译器在遇到第一个错误时就会停止编译,而不是继续显示更多的错误信息。这有助于开发者快速定位第一个错误,而不会被后续的错误信息淹没。不过,可能有时候后续错误是由于前面的错误引起的,所以这个选项可以节省时间,特别是在大型项目中。 接下来,需要解释这个选项的具体效果。例如,不使用该选项时,编译器可能会报告多个错误,而使用后则在第一个错误时终止。同时,用户可能想知道如何在实际中使用它,比如在命令行中添加-Wfatal-errors,或者结合其他选项使用。 然后,可能需要给出一个使用示例,比如编译一个包含错误的C文件,展示有无该选项时的不同输出。例如,创建一个简单的test.c文件,里面有一个错误,比如未声明的变量,然后分别用gcc test.c和gcc -Wfatal-errors test.c来比较输出结果。 还需要注意用户可能遇到的常见问题,比如如何解决由该选项引起的中止编译的情况。例如,用户可能添加了这个选项后发现编译过早停止,而他们想看到更多错误,这时需要知道如何禁用该选项,或者调整编译选项。 另外,用户可能需要了解该选项与其他选项的交互,比如和-Wall、-Werror的结合使用。-Werror会将警告转为错误,而-Wfatal-errors会在第一个错误时停止,这样两者的组合可能导致更早的中止。 最后,生成相关问题,帮助用户进一步了解相关主题,比如其他影响编译过程的GCC选项,或者如何处理多个编译错误。 总结回答的结构:首先解释选项的作用,然后说明用法,给出示例,讨论注意事项,最后生成相关问题。确保使用正确的中文术语,按照系统指令中的格式要求使用数学表达式(如果有的话),并添加引用标识。</think>### GCC `-Wfatal-errors` 编译选项详解 #### 作用 `-Wfatal-errors` 是 GCC 编译器的一个调试辅助选项,**其核心功能是让编译器在遇到第一个错误时立即终止编译过程**,而非继续输出后续错误信息[^1]。这种设计适合以下场景: 1. **快速定位首个错误**:避免后续因首个错误引发的级联错误干扰。 2. **缩短调试周期**:尤其在大型项目中,减少编译日志的冗长输出。 #### 用法 在编译命令中直接添加该选项: ```bash gcc -Wfatal-errors main.c -o output ``` 若存在语法错误,例如以下代码: ```c int main() { printf("Hello, World\n"); // 未包含<stdio.h> return 0; } ``` **无 `-Wfatal-errors` 时**: ``` main.c: In function ‘main’: main.c:2:5: warning: implicit declaration of function ‘printf’... ... ``` **添加 `-Wfatal-errors` 后**: ``` main.c:2:5: error: implicit declaration of function ‘printf’ [-Werror=implicit-function-declaration] compilation terminated due to -Wfatal-errors. ``` #### 注意事项 1. **与 `-Werror` 的差异**:`-Werror` 将警告转为错误但不终止编译,而 `-Wfatal-errors` 会直接终止。 2. **依赖关系**:若项目使用 Makefile,首次编译失败可能导致后续依赖文件未生成。 3. **调试建议**:建议在初步调试后移除该选项以全面检查代码。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值