部署期间的 JBoss java.io.IOException

标签 jboss manifest jboss7.x ioexception

我正在 JBossAS 7.1.1 上构建 JBoss 应用程序服务器模块。在尝试修改 list 文件中的类路径时,我遇到了这个错误:

12:30:53,097 INFO  [org.jboss.as.server.deployment] (MSC service thread 1-4) JBAS015876: Starting deployment of "MyDeployableProject.war"
12:30:53,141 ERROR [org.jboss.msc.service.fail] (MSC service thread 1-1) MSC00001: Failed to start service jboss.deployment.unit."MyDeployableProject.war".STRUCTURE: org.jboss.msc.service.StartException in service jboss.deployment.unit."MyDeployableProject.war".STRUCTURE: Failed to process phase STRUCTURE of deployment "MyDeployableProject.war"
    at org.jboss.as.server.deployment.DeploymentUnitPhaseService.start(DeploymentUnitPhaseService.java:119) [jboss-as-server-7.1.1.Final.jar:7.1.1.Final]
    at org.jboss.msc.service.ServiceControllerImpl$StartTask.startService(ServiceControllerImpl.java:1811) [jboss-msc-1.0.2.GA.jar:1.0.2.GA]
    at org.jboss.msc.service.ServiceControllerImpl$StartTask.run(ServiceControllerImpl.java:1746) [jboss-msc-1.0.2.GA.jar:1.0.2.GA]
    at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886) [classes.jar:1.6.0_31]
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908) [classes.jar:1.6.0_31]
    at java.lang.Thread.run(Thread.java:680) [classes.jar:1.6.0_31]
Caused by: org.jboss.as.server.deployment.DeploymentUnitProcessingException: Failed to get manifest for deployment "/opt/server/bin/jboss-as-7.1.1.Final/standalone/deployments/MyDeployableProject.war"
    at org.jboss.as.server.deployment.module.ManifestAttachmentProcessor.deploy(ManifestAttachmentProcessor.java:73) [jboss-as-server-7.1.1.Final.jar:7.1.1.Final]
    at org.jboss.as.server.deployment.DeploymentUnitPhaseService.start(DeploymentUnitPhaseService.java:113) [jboss-as-server-7.1.1.Final.jar:7.1.1.Final]
    ... 5 more
Caused by: java.io.IOException: invalid header field
    at java.util.jar.Attributes.read(Attributes.java:393) [classes.jar:1.6.0_31]
    at java.util.jar.Manifest.read(Manifest.java:182) [classes.jar:1.6.0_31]
    at java.util.jar.Manifest.<init>(Manifest.java:52) [classes.jar:1.6.0_31]
    at org.jboss.vfs.VFSUtils.readManifest(VFSUtils.java:216)
    at org.jboss.vfs.VFSUtils.getManifest(VFSUtils.java:199)
    at org.jboss.as.server.deployment.module.ManifestAttachmentProcessor.deploy(ManifestAttachmentProcessor.java:69) [jboss-as-server-7.1.1.Final.jar:7.1.1.Final]
    ... 6 more

最佳答案

事实证明,MANIFEST.MF 中的一个小错误导致了这个问题。该文件是:

Manifest-Version: 1.0
Class-Path:

原来,该错误是由于 Class-Path: 之后没有空格造成的。 .这(只有一个空间不同)是有效的:
Manifest-Version: 1.0
Class-Path: 

希望这会阻止其他人怀疑。

关于部署期间的 JBoss java.io.IOException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10886019/

相关文章:

java - 增加一次处理的出队消息数量 (ActiveMQ)

java - 在 JBoss 5.1 中以编程方式确定 JNDI 根上下文/耳朵名称

java - 如何使用 log4j 和 jboss 记录未捕获的运行时异常?

android - android :name really required? 中的前导点

node.js - 将 Node.js 应用程序部署到 Cloud Foundry 后,浏览器无法解析 Node.js 应用程序中的 manifest.json

Spring <jee :remote-slsb> and JBoss AS7 - No EJB receiver available for handling

java - 通过 wildfly maven 插件重启 jboss 的命令行参数是什么?

android - Android 中自动读取 OTP/SMS

java - JBoss 中枚举的每个 NetworkInterface 总是 isUp

java - Jboss 7.1、Eclipse 4,2 和 OSGI - ClassNotFoundException