0
我目前正在为Jenkins CI制作一个插件。我正在尝试创建一个新的Project类型,并且遇到了一些编译我的代码的问题。我在詹金斯代码库中看到以下工作:Java中内部类的名称解析
// hudson/model/AbstractBuild.java
package hudson.model;
public abstract class AbstractBuild<P extends AbstractProject<P,R>,R extends AbstractBuild<P,R>> extends Run<P,R> implements Queue.Executable {
public abstract class AbstractBuildExecution extends Runner {
// ...
}
}
// hudson/matrix/MatrixBuild.java
package hudson.matrix;
public class MatrixBuild extends AbstractBuild<MatrixProject,MatrixBuild> {
public class MatrixBuildExecution extends AbstractBuildExecution {
// ...
}
}
这两个文件编译得很好。当我尝试在我的插件中执行相同的操作时...
package parallelbuild;
public class ParallelBuild extends AbstractBuild<ParallelProject,ParallelBuild> {
public class ParallelBuildExecution extends AbstractBuildExecution {
// ...
}
}
Maven向我提供以下javac错误。
[ERROR] /home/jsternberg/jenkins-parallel-build/parallel-build/src/main/java/parallelbuild/ParallelBuild.java:[29,48] cannot find symbol
[ERROR] symbol : class AbstractBuildExecution
[ERROR] location: class parallelbuild.ParallelBuild
[ERROR] /home/jsternberg/jenkins-parallel-build/parallel-build/src/main/java/parallelbuild/ParallelBuild.java:[29,48] cannot find symbol
[ERROR] symbol : class AbstractBuildExecution
[ERROR] location: class parallelbuild.ParallelBuild
[ERROR] -> [Help 1]
我在做什么错?
对普通的Java开发人员来说可能很明显,但我甚至没有考虑过我使用的是旧版本的依赖关系。当你创建一个项目时自动选择的是1.424(在检查出该版本时,似乎没有AbstractBuildExecution)。 – 2012-07-16 13:55:39
if normal = expect that _anything_ can wrong wrong,then yeah,it obvious :) – 2012-07-17 00:47:53