Jelly脚本可用的路径功能?

时间:2011-01-13 15:33:07

标签: hudson jenkins jelly

我希望能够在Hudson / Jenkins的果冻脚本中将目录文件名称与完整路径分开。

例如,如果我有/dir1/dir2/dir3/file.ext我想(在果冻脚本中)可以访问/dir1/dir2/dir3file.ext

java io函数如getPath()和getName()是否可用于果冻脚本?

1 个答案:

答案 0 :(得分:0)

Dion Gillard的Jelly: Executable XML套牌非常有助于整理出来。从幻灯片中我了解了invoke(和invokeStatic)标签,这正是我所需要的。 Apache FilenameUtils class有一些非常好的静态方法来处理文件名,它包含在Hudson中。

<j:jelly xmlns:j="jelly:core">
  <j:set var="fullpath" value="/dir1/dir2/dir3/file.ext"/>

  <!-- get the path without the filename -->
  <j:invokeStatic var="justpath" method="getPath" className="org.apache.commons.io.FilenameUtils">
    <j:arg value="${fullpath}"/>
  </j:invokeStatic>

  <!-- get just the filename -->
  <j:invokeStatic var="justname" method="getName" className="org.apache.commons.io.FilenameUtils">
    <j:arg value="${fullpath}"/>
  </j:invokeStatic>
</j:jelly>

在上面的示例中, justpath 将设置为/dir1/dir2/dir3/ justname 将设置为file.ext