You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

KNIME File Reader节点对话框创建报错:URI非层级化求助

解决KNIME File Reader节点"URI is not hierarchical"报错问题

这个报错我之前在Windows环境下用KNIME时也碰到过,结合你提供的日志来看,核心原因很明确:File Reader节点的历史路径记录里存了格式不兼容的路径(比如带file://前缀的URI格式路径,或者网络共享路径的解析异常),导致节点在加载对话框时没法把这个URI转换成Windows系统能识别的层级式文件路径——日志里的WindowsUriSupport.fromUri调用失败就是最好的证明。

给你几个靠谱的解决办法,按顺序试就行:

  • 清理File Reader的历史路径

    1. 打开KNIME,点击顶部菜单的File → Preferences
    2. 在偏好设置窗口里找到KNIME → File History
    3. 右侧列表里找到File Reader对应的历史记录,把所有看起来格式奇怪的路径(比如带file://的)都删掉
    4. 重启KNIME,再打开File Reader节点试试
  • 手动输入标准本地路径
    如果清理历史后能正常打开节点对话框,直接输入不带任何前缀的Windows本地路径,比如C:\your_folder\your_data.csv,别用file://C:/your_folder/your_data.csv这种URI格式。

  • 升级KNIME版本
    从日志时间来看你用的是2018年的老版本,这类路径解析的bug在后续的KNIME稳定版里已经被修复了,升级到4.x或5.x的正式版能从根源上避免这个问题。

附上你提供的错误日志,方便参考:

2018-01-09 18:50:31,599 : DEBUG : main : Node : File Reader : 0:206:208 : Error while creating node dialog for 'File Reader': URI is not hierarchical
java.lang.IllegalArgumentException: URI is not hierarchical
	at sun.nio.fs.WindowsUriSupport.fromUri(WindowsUriSupport.java:122)
	at sun.nio.fs.WindowsFileSystemProvider.getPath(WindowsFileSystemProvider.java:92)
	at java.nio.file.Paths.get(Paths.java:138)
	at org.knime.core.util.FileUtil.resolveToPath(FileUtil.java:1127)
	at org.knime.core.node.util.FilesHistoryPanel$FileReaderCheckLabel.checkLocation(FilesHistoryPanel.java:328)
	at org.knime.core.node.util.FilesHistoryPanel.fileLocationChanged(FilesHistoryPanel.java:952)
	at org.knime.core.node.util.FilesHistoryPanel.access$2(FilesHistoryPanel.java:946)
	at org.knime.core.node.util.FilesHistoryPanel$4.insertUpdate(FilesHistoryPanel.java:513)
	at javax.swing.text.AbstractDocument.fireInsertUpdate(AbstractDocument.java:201)
	at javax.swing.text.AbstractDocument.handleInsertString(AbstractDocument.java:748)
	at javax.swing.text.AbstractDocument.insertString(AbstractDocument.java:707)
	at javax.swing.text.PlainDocument.insertString(PlainDocument.java:130)
	at javax.swing.text.AbstractDocument.replace(AbstractDocument.java:669)
	at javax.swing.text.JTextComponent.setText(JTextComponent.java:1669)
	at javax.swing.plaf.basic.BasicComboBoxEditor$BorderlessTextField.setText(BasicComboBoxEditor.java:144)
	at javax.swing.plaf.basic.BasicComboBoxEditor.setItem(BasicComboBoxEditor.java:87)
	at com.sun.java.swing.plaf.windows.WindowsComboBoxUI$WindowsComboBoxEditor.setItem(WindowsComboBoxUI.java:507)
	at javax.swing.JComboBox.configureEditor(JComboBox.java:1404)
	at javax.swing.plaf.basic.BasicComboBoxUI$Handler.contentsChanged(BasicComboBoxUI.java:1864)
	at javax.swing.AbstractListModel.fireContentsChanged(AbstractListModel.java:118)
	at javax.swing.DefaultComboBoxModel.setSelectedItem(DefaultComboBoxModel.java:93)
	at javax.swing.DefaultComboBoxModel.addElement(DefaultComboBoxModel.java:131)
	at org.knime.core.node.util.FilesHistoryPanel.updateHistory(FilesHistoryPanel.java:844)
	at org.knime.core.node.util.FilesHistoryPanel.<init>(FilesHistoryPanel.java:631)
	at org.knime.base.node.io.filereader.FileReaderNodeDialog.createFileNamePanel(FileReaderNodeDialog.java:283)
	at org.knime.base.node.io.filereader.FileReaderNodeDialog.<init>(FileReaderNodeDialog.java:261)
	at org.knime.base.node.io.filereader.FileReaderNodeFactory.createNodeDialogPane(FileReaderNodeFactory.java:126)
	at org.knime.core.node.Node$1.run(Node.java:2069)
	at org.knime.core.node.util.ViewUtils$3.run(ViewUtils.java:353)
	at org.knime.core.node.util.ViewUtils$2.run(ViewUtils.java:155)
	at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:311)
	at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:756)
	at java.awt.EventQueue.access$500(EventQueue.java:97)
	at java.awt.EventQueue$3.run(EventQueue.java:709)
	at java.awt.EventQueue$3.run(EventQueue.java:703)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:80)
	at java.awt.EventQueue.dispatchEvent(EventQueue.java:726)
	at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:201)
	at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116)
	at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105)
	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93)
	at java.awt.EventDispatchThread.run(EventDispatchThread.java:82)
2018-01-09 18:50:36,581 : DEBUG : main : NodeContainerEditPart : : : File Reader 0:206:208 (IDLE)

内容的提问来源于stack exchange,提问作者Luca Monno

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.15 07:56:32