Interface BuildManager
-
- All Known Implementing Classes:
DefaultBuildManager
public interface BuildManagerDeal with environment related to a specific go build. For example, GOPATH/GOROOT to be used.
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description java.lang.StringgetGopath()Get GOPATH in this build.java.util.List<java.nio.file.Path>getGopaths()Get GOPATH as a list.intgo(java.util.List<java.lang.String> args, java.util.Map<java.lang.String,java.lang.String> env)Fork a go process and run commands specified byargs, under the environments comprised byenv+ GOPATH/GOROOT/GOARCH/GOEXE, whereenvhas higher priority.intgo(java.util.List<java.lang.String> args, java.util.Map<java.lang.String,java.lang.String> env, java.util.function.Consumer<java.lang.String> stdoutLineConsumer, java.util.function.Consumer<java.lang.String> stderrLineConsumer)Fork a go process and run commands specified byargs, under the environments comprised byenv+ GOPATH/GOROOT/GOARCH/GOEXE, whereenvhas higher priority.intgo(java.util.List<java.lang.String> args, java.util.Map<java.lang.String,java.lang.String> env, java.util.function.Consumer<java.lang.String> stdoutLineConsumer, java.util.function.Consumer<java.lang.String> stderrLineConsumer, boolean continueOnFailure)voidprepareProjectGopathIfNecessary()Determine GOPATH to be used.intrun(java.util.List<java.lang.String> args, java.util.Map<java.lang.String,java.lang.String> env, java.util.function.Consumer<java.lang.String> stdoutLineConsumer, java.util.function.Consumer<java.lang.String> stderrLineConsumer)Fork a process and run commands specified byargs, under the environments comprised byenv+ GOPATH/GOROOT/GOARCH/GOEXE, whereenvhas higher priority.intrun(java.util.List<java.lang.String> args, java.util.Map<java.lang.String,java.lang.String> env, java.util.function.Consumer<java.lang.String> stdoutLineConsumer, java.util.function.Consumer<java.lang.String> stderrLineConsumer, boolean continueOnFailure)
-
-
-
Method Detail
-
prepareProjectGopathIfNecessary
void prepareProjectGopathIfNecessary()
Determine GOPATH to be used. If global GOPATH doesn't exist, a project-level GOPATH will be prepared.
-
getGopath
java.lang.String getGopath()
Get GOPATH in this build.- Returns:
- the GOPATH to be used
-
getGopaths
java.util.List<java.nio.file.Path> getGopaths()
Get GOPATH as a list.- Returns:
- the list of GOPATHs
-
go
int go(java.util.List<java.lang.String> args, java.util.Map<java.lang.String,java.lang.String> env)Fork a go process and run commands specified byargs, under the environments comprised byenv+ GOPATH/GOROOT/GOARCH/GOEXE, whereenvhas higher priority.- Parameters:
args- the arguments to be passed to goenv- extra environment variables to be passed to go- Returns:
- return code of go command
-
go
int go(java.util.List<java.lang.String> args, java.util.Map<java.lang.String,java.lang.String> env, java.util.function.Consumer<java.lang.String> stdoutLineConsumer, java.util.function.Consumer<java.lang.String> stderrLineConsumer)Fork a go process and run commands specified byargs, under the environments comprised byenv+ GOPATH/GOROOT/GOARCH/GOEXE, whereenvhas higher priority.Stdout and stderr line of the forked process will be consumed by
stdoutLineConsumerandstderrLineConsumerline by line, respectively.Return code of the forked process will be consumed by
retcodeConsumer.- Parameters:
args- the arguments to be passed to goenv- extra environment variables to be passed to gostdoutLineConsumer- the consumer by which stdout line is consumedstderrLineConsumer- the consumer by which stderr line is consumed- Returns:
- return code of go command
-
go
int go(java.util.List<java.lang.String> args, java.util.Map<java.lang.String,java.lang.String> env, java.util.function.Consumer<java.lang.String> stdoutLineConsumer, java.util.function.Consumer<java.lang.String> stderrLineConsumer, boolean continueOnFailure)
-
run
int run(java.util.List<java.lang.String> args, java.util.Map<java.lang.String,java.lang.String> env, java.util.function.Consumer<java.lang.String> stdoutLineConsumer, java.util.function.Consumer<java.lang.String> stderrLineConsumer)Fork a process and run commands specified byargs, under the environments comprised byenv+ GOPATH/GOROOT/GOARCH/GOEXE, whereenvhas higher priority.Stdout and stderr line of the forked process will be consumed by
stdoutLineConsumerandstderrLineConsumerline by line, respectively.Return code of the forked process will be consumed by
retcodeConsumer.- Parameters:
args- the arguments start a processenv- extra environment variables to be passed to gostdoutLineConsumer- the consumer by which stdout line is consumedstderrLineConsumer- the consumer by which stderr line is consumed- Returns:
- return code of go command
-
run
int run(java.util.List<java.lang.String> args, java.util.Map<java.lang.String,java.lang.String> env, java.util.function.Consumer<java.lang.String> stdoutLineConsumer, java.util.function.Consumer<java.lang.String> stderrLineConsumer, boolean continueOnFailure)
-
-