You can clone with
Version 1.2.15 of log4j has dependency on few Sun jars:
These jars are not present anywhere in maven repo and hence cause build issues. Either we can switch back to version 1.2.14 of log4j (which does not depend on these jars) or we should 'exclude' these jars while building the project.
I faced the build issues after forking out the project yesterday. So I modified the corresponding BUILD files to exclude these jars.
Is it already a known issue here?
This is not a known issue - it was thought that all the proper excludes were in place. What command line do you use? (what targets do you build?)
Initially I tried building only thrift target:
Then I tried building the full build:
Both of them failed because of the above mentioned reasons.
Aha. Yes - this is all undocumented - but we are very close to gutting old pants - which shells out to ant after generating some build.xmls. The new pants is pure python and these targets work:
$ ./pants goal clean-all compile src/java/com/twitter/common/thrift --gen-thrift-lang=java -vx
$ ./pants goal test tests/java/com/twitter/common:all -vx
For now all of new pants is implemented as subcommands to goal, so
To see all goals:
$ ./pants goal
To see help for a goal:
$ ./pants goal help compile
Note that new pants will spawn nailgun servers for several goals (resolve, compile:javac, cmpile:scalac, checkstyle):
$ ps -ef | grep nailgun
501 59387 1 0 12:00AM ?? 0:02.60 /usr/bin/java -Xmx2g -XX:MaxPermSize=256m -Dtwitter.pants.buildroot=/Users/jsirois/development/third_party/twitter-commons -Dpidfile=.pants.d/ng/ivy/pid -jar /Users/jsirois/development/third_party/twitter-commons/build-support/ng/lib/nailgun-0.7.1.jar :0
501 59402 1 0 12:00AM ?? 0:08.44 /usr/bin/java -Xmx2g -XX:MaxPermSize=256m -Dtwitter.pants.buildroot=/Users/jsirois/development/third_party/twitter-commons -Dpidfile=.pants.d/ng/jmake/pid -jar /Users/jsirois/development/third_party/twitter-commons/build-support/ng/lib/nailgun-0.7.1.jar :0
501 59404 1 0 12:00AM ?? 0:06.39 /usr/bin/java -Xmx2g -XX:MaxPermSize=256m -Dtwitter.pants.buildroot=/Users/jsirois/development/third_party/twitter-commons -Dpidfile=.pants.d/ng/checkstyle/pid -jar /Users/jsirois/development/third_party/twitter-commons/build-support/ng/lib/nailgun-0.7.1.jar :0
As of now, I solved this issue by explicitly excluding these jars from the BUILD file:
java_thrift_library(name = 'thrift',
provides = artifact(
org = 'com.twitter.common',
name = 'service-thrift',
repo = pants('build-support/commons/ivy:public'),
excludes = [
exclude(org = 'javax.jms'),
exclude(org = 'com.sun.jdmk'),
exclude(org = 'com.sun.jmx'),
sources = globs('*.thrift')