0

在使用 KNIME 进行测试和学习时,我们通常使用文件夹结构,例如

MyProject/
    MyKNIMEWorkspace/
    MyKNIMEDataFolder/

在每台计算机上。每个人都可以自由编写自己的工作流,不必共享它们等。但是我们希望能够相互发送工作流,我们不需要手动更改数据文件夹的路径,如果每个人都遵循给定的结构,即总是寻找更高的级别并找到文件夹MyKNIMEDataFolder并获取文件xyz.table

我玩过路径变量(对于每个安装基本上都是固定的),工作流变量流变量(在发送工作流时被发送),尝试将两者与路径变量帮助文档中的语法(即${VAR})连接起来,但我找不到将工作流与本地路径完全断开的正确方法。

  1. 你觉得我们的结构有什么问题吗?
  2. 您将如何处理发送工作流的问题?
4

2 回答 2

0

我认为您可以尝试使用 Java Snippet 节点在流变量到达文件输入节点(文件阅读器?)之前对其进行编辑。Java 片段可以查询knime.workspace流变量,并在作为公共文件结构的路径部分之前使用该部分字符串。

于 2014-09-12T11:19:12.890 回答
0

实际上,我希望你现在已经解决了这个问题。KNIME 的工作方式是你需要从你的 knime 工作区开始一切。

对于 KNIME 客户端:

/home//workspace/workflow_1, /home//workspace/workflow_2,在您启动 KNIME 客户端时选择工作区。

对于 KNIME,这个工作区是你的“workflow_repository”,它有 workflow_1 和 workflow_2。

您可以与 workflow_1 并行创建目录 DataFiles。

您用来引用这些文件的 knime 协议是:

  1. knime:// knime.workflow /../DataFile/filename - 与工作流相关的 URL。使用精确的 keywork knime.workflow
  2. knime:// knime.mountpoint /DataFile/filename - 相对于起点的 URL。在 knime 客户端中,挂载点是本地的。或者
  3. knime:// LOCAL /DataFile/filename - 绝对 URL。此方案的缺点是您被固定到 LOCAL。如果您与其他人协作,他们必须将引用从 LOCAL 更改为其他内容。

knime 服务器上有分支。但我会避免让你感到困惑。

最重要的是,这可能对您的情况没有帮助。所以我不会说它与你原来的问题有关:

knime:// knime.node /../path/filename 希望您手动进入工作流存储库目录, cd 进入工作流,并创建一个目录,例如,称为数据。然后你可以通过 knime: //knime.node /../data/some_file引用你的数据。你不能从 Knime Explorer/UI 中做到这一点。

于 2017-08-25T22:32:49.597 回答