0

我正在尝试使用 Play2War 将 Play 2.1.1 应用程序部署到 Websphere 8.5.5。该应用程序在启动时运行良好,play ~run但是当我将战争部署到 Websphere 时,我收到以下错误消息:

org.reflections.ReflectionsException:
    could not create Vfs.Dir from url, no matching UrlType was found
    [wsjar:file:/C:/apps/websphere/wlp/usr/servers/server_kev/workarea/org.eclipse.osgi/bundles/45/data/cache/com.ibm.ws.app.manager_gen_0fdbabb2-5ae7-4075-bda1-136e52319906/.cache/WEB-INF/lib/playbackend.jar!/]

其他人看到这个问题吗?

4

3 回答 3

1

如果您当前的 Reflections 库还没有开箱即用,只需添加一个 Vfs UrlType:

Vfs.addDefaultURLTypes(
    new Vfs.UrlType() {
        public boolean matches(URL url) {
           return url.getProtocol().equals("vfs");
        }

        public Vfs.Dir createDir(URL url) {
            return DefaultUrlTypes.jarUrl.createDir(url);
        }

查看最新消息来源

于 2013-08-12T11:05:19.907 回答
0

如果您使用Subcontext Deployment,请确保在 中conf/application.conf添加:

application.context=/KevSheedyApp/

您可以将您的战争命名为KevSheedyApp.war.

您应该能够通过以下方式访问您的应用程序http://host:port/KevSheedyApp/bla/bla

于 2013-06-28T05:19:25.237 回答
0

即使使用最新版本的反射库,我也会得到这个。我最终发现这是我构建我的(胖)罐子(或者在你的情况下是战争)的方式。我有一个 ant 脚本(最初由 Eclipse 生成)将库按原样复制到 jar 中并使用某种加载器。相反,我告诉它将库解压缩到我的 jar 中,这解决了这个问题。不知道为什么当它们按原样打包到罐子/战争中时会发生这种情况。我希望这可以帮助别人。

于 2016-03-21T07:49:20.757 回答