Skip to content

Instantly share code, notes, and snippets.

Transitivity

Every time you run a build with Maven, or PDE Build, you resolve all your dependencies in a transitive manner.

What that means is that you read all the poms, all the manifests, and jump on the next pom, the next manifest.
You gather all the dependencies together. You validate them, throw a few errors and start building.

With Buildr, you’ll do the same BUT you won’t do it every time you run a build.

We keep builds reproducible.

---> lib
<--- lib
---> ext
/usr/local/rubinius/1.0.0/bin/rbx "/Users/antoine/w/git/rjb/ext/extconf.rb"
checking for jni.h... yes
checking for dl.h... yes
checking for locale_charset() in iconv.h... no
checking for nl_langinfo() in langinfo.h... yes
checking for setlocale() in locale.h... yes
checking for getenv()... yes
# find first callback with satisfied dependencies
def first_satisfied(r, known_callbacks)
remaining_names = r.map { |cb| cb.name }
res = r.find do |cb|
cb.dependencies.each do |dep|
fail "Unknown #{phase.inspect} extension dependency: #{dep.inspect}" unless known_callbacks.index(dep)
end
satisfied = cb.dependencies.find { |dep| remaining_names.index(dep) } == nil
cb if satisfied
end
(in C:/rake)
RCov is not available
RUBY VERSION = 1.8.7
RUNNING WITH SESSIONS
Loaded suite C:/jruby-1.5.0/lib/ruby/gems/1.8/gems/rake-0.8.7/lib/rake/rake_test_loader
Started
.......EEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE..................................................................................................................................................................................................................................................................................................................................................................................
Finished in 38.598 seconds.
[qtp1128916529-28 - Acceptor1 SelectChannelConnector@:8080] INFO org.eclipse.jetty.util.log - org.eclipse.jetty.io.nio.SelectorManager$SelectSet@52437b9a JVM BUG(s) - injecting delay19 times
12:46:37.873 [qtp1128916529-28 - Acceptor1 SelectChannelConnector@:8080] INFO org.eclipse.jetty.util.log - org.eclipse.jetty.io.nio.SelectorManager$SelectSet@52437b9a JVM BUG(s) - cancelled keys 304 times
12:47:37.890 [qtp1128916529-28 - Acceptor1 SelectChannelConnector@:8080] INFO org.eclipse.jetty.util.log - org.eclipse.jetty.io.nio.SelectorManager$SelectSet@52437b9a JVM BUG(s) - injecting delay59 times
12:47:37.891 [qtp1128916529-28 - Acceptor1 SelectChannelConnector@:8080] INFO org.eclipse.jetty.util.log - org.eclipse.jetty.io.nio.SelectorManager$SelectSet@52437b9a JVM BUG(s) - cancelled keys 944 times
12:48:37.891 [qtp1128916529-28 - Acceptor1 SelectChannelConnector@:8080] INFO org.eclipse.jetty.util.log - org.eclipse.jetty.io.nio.SelectorManager$SelectSet@52437b9a JVM BUG(s) - injecting delay58 times
12:48:37.8
org.eclipse.equinox.launcher.Main at localhost:57405 (Suspended)
Daemon System Thread [Signal Dispatcher] (Suspended)
Daemon System Thread [Finalizer] (Suspended)
Object.wait(long) line: not available [native method]
ReferenceQueue<T>.remove(long) line: 118
ReferenceQueue<T>.remove() line: 134
Finalizer$FinalizerThread.run() line: 159
Daemon System Thread [Reference Handler] (Suspended)
Object.wait(long) line: not available [native method]
Reference$Lock(Object).wait() line: 485
Buildfile: build.xml
-pre-init:
-init-private:
-pre-init-libraries:
-init-private-libraries:
atoulme@build:~/jffi.git> ant jar test
Buildfile: build.xml
-pre-init:
-init-private:
-pre-init-libraries:
-init-private-libraries:
Exception in thread "main" java.lang.RuntimeException: java.lang.reflect.InvocationTargetException
at org.apache.buildr.SpecsSingletonRunner.run(SpecsSingletonRunner.java:54)
at org.apache.buildr.SpecsSingletonRunner.main(SpecsSingletonRunner.java:35)
Caused by: java.lang.reflect.InvocationTargetException
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:592)
at org.apache.buildr.SpecsSingletonRunner.run(SpecsSingletonRunner.java:52)
... 1 more
$ rake
(in /home/toulmean/rubinius-1.0.1)
LLVM inclusion enabled.
GEN vm/gen/instruction_names.cpp
GEN vm/gen/instruction_names.hpp
GEN vm/gen/instruction_sizes.hpp
GEN vm/gen/instruction_prototypes.hpp
GEN vm/gen/instruction_defines.hpp
GEN vm/gen/instruction_locations.hpp
GEN vm/gen/instruction_implementations.hpp