java.net.MalformedURLException:无协议

发布于 2024-10-09 07:40:29 字数 745 浏览 5 评论 0原文

我正在编写一个类来在 java 中运行 xjc。我的代码如下:

 URL url = new URL("C:\\Users\\Simran\\Desktop\\books.xsd"); 
 SchemaCompiler sc = XJC.createSchemaCompiler();
 sc.parseSchema(new InputSource(url.toExternalForm()));
 S2JJAXBModel model = sc.bind();
 JCodeModel cm = model.generateCode(null, null);
 cm.build(new FileCodeWriter(new File("C:\\Users\\Simran\\Desktop\\books.xsd")));

但是,当我运行此代码时,出现以下错误:

Exception in thread "main" java.net.MalformedURLException: no protocol: books.xsd
    at java.net.URL.<init>(Unknown Source)
    at java.net.URL.<init>(Unknown Source)
    at java.net.URL.<init>(Unknown Source)
    at jaxbTest.Test1.main(Test1.java:22)

任何人都可以帮忙解决这个问题吗?

I' m writing a class to run xjc in java. my code goes as follows:

 URL url = new URL("C:\\Users\\Simran\\Desktop\\books.xsd"); 
 SchemaCompiler sc = XJC.createSchemaCompiler();
 sc.parseSchema(new InputSource(url.toExternalForm()));
 S2JJAXBModel model = sc.bind();
 JCodeModel cm = model.generateCode(null, null);
 cm.build(new FileCodeWriter(new File("C:\\Users\\Simran\\Desktop\\books.xsd")));

however I get the following error when I run this:

Exception in thread "main" java.net.MalformedURLException: no protocol: books.xsd
    at java.net.URL.<init>(Unknown Source)
    at java.net.URL.<init>(Unknown Source)
    at java.net.URL.<init>(Unknown Source)
    at jaxbTest.Test1.main(Test1.java:22)

Can anyone help with this please?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

陪我终i 2024-10-16 07:40:29

尝试将 "file://" 附加到文件路径的开头。但正如 Bozho 提议的那样,您不需要此处的 URL。

Try append "file://" to the beginning of your file path. But as Bozho proposed, you don't need an URL here.

毁我热情 2024-10-16 07:40:29

这不是有效的 URL。可以通过在前面添加 file:// 作为协议来使其有效。

但您根本不需要 URL。您可以将 Reader (以及 InputStream)传递给 InputSource 构造函数。例如:

new InputSource(new FileReader(path))

This is not a valid URL. It can be made valid by prepending file:// as protocol.

But you don't need a URL at all. You can pass a Reader (as well as an InputStream) to the InputSource constructor. So for example:

new InputSource(new FileReader(path))
游魂 2024-10-16 07:40:29

我在打开虚拟控制台时有上述情况。

解决方案:您在浏览器中选择了非常安全的选项。

开始--> Java 配置 --> 安全性 -- 点击 - 非常高。

I had the above ,while opening the virtual console.

Resolution : You have select very secure option in Browser.

Start--> Java configuration -->Security --Cilick on - Very High.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文