私は初心者ですので、これが可能かどうかはわかりません。私は輸入のようなものが必要ですが、それほど必要ではありません。ここで私は何をしようとしているの単純化されたコードの例である:私は別のGroovyファイルのクラスをJenkinsパイプラインスクリプトの型として使用する
class FileToProcess implements Serializable {
String FileName
FileToProcess(fileName) {
this.FileName = fileName;
}
}
を持っているし、その後JenkinsFileに、私は
F1 = new FileToProcess('A');
List<FileToProcess> allFiles = new ArrayList<FileToProcess>();
allFiles.add(F1);
for (FileToProcess file : allFiles) {
System.out.println(file.FileName);
}
のような何かをしたいファイルFileToProcess.groovyで
今、私はStackOverflowで、例えばhereまたはhereのように、クラスを別のファイルからインスタンス化する方法の例を見つけました。その行を解決します。
F1 = new FileToProcess('A');
が、それは宣言で型としてそのクラスを使用する方法を示していないが、例えば
List<FileToProcess> allFiles = new ArrayList<FileToProcess>();
は私に「クラスFileToProcessを解決することができません」を与えます。私はまた、同じJenkinsFileにクラスを置くときにそうするので、このような型としてクラスを使うことはうまくいくはずなので、問題はJenkinsFileでクラスが見えないことだけであるように思えます。
これを行う方法はありますか?
まあ下のファイルを置くと仮定すると、それらはジェンキンスによってはgitから引っ張られます。私は共有ライブラリを使用しませんでした。これが唯一の方法ですか?私はロードを使用することも、ファイルから直接インポートすることもできないのですか? –
私は今までに個人的にパイプラインライブラリオプションのみを使用しました。いずれにしても、そのコードをそのように管理する方が少し良いと思う – Kelrak