java.io.FileNotFoundException(文件名、目录名或卷标语法不正确)在启动 Jboss 时



启动 jboss 时,我得到以下错误:

java.io.FileNotFoundException: file:\C:\workspace4.3.2\workspacePLE.metadata.plugins\org.jboss.ide.eclipse.as.core\JBoss_AS_4.21507285539456\deploy\LocalDeploy.ear\ple.war\WEB-INF\lib\ple-data.jar!\data\config\HTMLEntities.res (文件名、目录名或卷标语法不正确)

at java.io.FileInputStream.open(Native Method)
    at java.io.FileInputStream.<init>(FileInputStream.java:120)
    at java.io.FileInputStream.<init>(FileInputStream.java:79)
    at com.inetpsa.ple.utilitaires.PleCharEntities.initialize(PleCharEntities.java:37)
    at com.inetpsa.ple.initialisation.OUInit.initHtmlEntities(OUInit.java:340)
    at com.inetpsa.ple.initialisation.OUInit.interneInit(OUInit.java:367)
    at com.inetpsa.ple.initialisation.OUInit.reinit(OUInit.java:424)
    at com.inetpsa.ple.initialisation.OUInit.init(OUInit.java:412)
但是

该文件存在于此位置(但是它位于 jar 内)。

获取文件路径的代码是:

String htmlEntFileName = OUInit.class.getClassLoader().getResource("data/config/HTMLEntities.res").getPath();

如果我遗漏了什么,请告诉我。

您正在使用FileInputStream,所以我假设您确定创建新FileInputStream的路径,但是一旦文件在jar内,就无法再将其作为文件访问。

可以使用 Class.getResourceAsStream()Class.getResource().openStream() 作为InputStream访问该文件。

最新更新