Java HTML文件和JEditor窗格

Java HTML文件和JEditor窗格,java,html,swing,jeditorpane,Java,Html,Swing,Jeditorpane,我正在试图弄清楚如何将HTML文件读入JEditorPane 我有以下代码: JEditorPane editorPane = new JEditorPane(); URL helpURL = MainFrame.class.getResource("user-manual.html"); 现在我的问题是,user manual.html文件需要放在保存MainFrame类的bin文件夹中,否则它将无法工作。现在我的问题是我的目录必须如下所示: as1/ as1/doc/ as1/doc/us

我正在试图弄清楚如何将HTML文件读入
JEditorPane

我有以下代码:

JEditorPane editorPane = new JEditorPane();
URL helpURL = MainFrame.class.getResource("user-manual.html");
现在我的问题是,
user manual.html
文件需要放在保存MainFrame类的bin文件夹中,否则它将无法工作。现在我的问题是我的目录必须如下所示:

as1/ as1/doc/ as1/doc/user-manual.html as1/doc/system-doc.html as1/doc/images/ as1/src/
 URL helpURL = MainFrame.class.getResource("/as1/doc/user-manual.html");
as1/ as1/doc/ as1/doc/user-manual.html as1/doc/system-doc.html as1/doc/images/ as1/src/
如何将
用户手册.html
文件读入URL?

您可以将items目录添加到类路径中,并按现在的状态继续访问它,也可以按以下方式在目录结构中访问:

MainFrame.class.getResource("as1/doc/user-manual.html");

方法
Class.getResource
也接受半相对地址,如下所示:

as1/ as1/doc/ as1/doc/user-manual.html as1/doc/system-doc.html as1/doc/images/ as1/src/
 URL helpURL = MainFrame.class.getResource("/as1/doc/user-manual.html");
然后路径根在jar文件(或classpath目录)上,而不是包目录。

这怎么样

getClass().getClassLoader().getResource("as1/doc/user-manual.html");
可能的原因-

  • html文件可能存储在错误的位置
  • setContent
    方法可能未设置为“text/html”

  • 您实际将HTML内容添加到窗格的代码在哪里?在下面的两个答案中,您看到了哪些错误消息?jar上的
    jar tf
    的输出是什么?有时,成功取决于使用哪个类装入器来查找资源。因此,使用用户对象的实例可以在其他方法不起作用的情况下工作。例如,this.getClass().getResource(..)或mainFrame.getClass().getResource(..)它假定您的类文件根在相同的目录结构中。或者,如果您有一个jar,它们是从同一个jar加载的。确保你的罐子看起来合适。