2

Hudson/Jenkinsのゼリースクリプトでディレクトリファイル名をフルパスから分離するなどのことができるようにしたいと思います。

たとえば、 (ゼリースクリプトで)と/dir1/dir2/dir3/file.extにアクセスしたい場合。/dir1/dir2/dir3file.ext

getPath()やgetName()などのJava io関数をジェリースクリプトで使用できますか?

4

1 に答える 1

1

Dion Gillard's Jelly:実行可能XMLデッキは、これを整理するのに非常に役立ちました。スライドから、まさに必要なものであるinvoke(およびinvokeStatic )タグについて学びました。Apache FilenameUtilsクラスには、ファイル名を処理するための非常に優れた静的メソッドがいくつかあり、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ます。

于 2011-01-16T23:29:26.397 に答える