For the past few years, most of my personal and professional projects are built using Maven. The dependency management and corresponding build lifecycle enable me to do some complex builds (for instance HBase 1.2.5 Client Jars).
mvn dependency:tree -f demo-app/pom.xml
[INFO] +- junit:junit:jar:4.12:test
[INFO] | \- org.hamcrest:hamcrest-core:jar:1.3:test
[INFO] \- org.apache.hbase:hbase:pom:1.2.5:compile
[INFO] +- com.github.stephenc.findbugs:findbugs-annotations:jar:1.3.9-1:compile
[INFO] \- log4j:log4j:jar:1.2.17:compile
When these dependencies change underlying the build change, the build and debugging is a pain. I ran into this plugin Maven Animal Sniffer Plugin. I did have to enable a specific configuration <configuration><includeJavaHome>false</includeJavaHome></configuration>
mvn animal-sniffer:build -f demo-app/pom.xml
[INFO] --- animal-sniffer-maven-plugin:1.16:build (default-cli) @ demo-app ---
[INFO] Parsing signatures from com.github.stephenc.findbugs:findbugs-annotations:jar:1.3.9-1
[INFO] Parsing signatures from log4j:log4j:jar:1.2.17
[INFO] Parsing signatures from /Users/paulbastide/Downloads/animal/demo-app/target/classes
[INFO] Wrote signatures for 337 classes.
I can now store this along with my build. The generated file demo-app/target/demo-app-1.0-SNAPSHOT.signature can then be used to check plugin
On Mac and Linux, create a random file (https://stackoverflow.com/questions/257844/quickly-create-a-large-file-on-a-linux-system)
dd if=/dev/urandom of=random-test-file-100m bs=1024k count=100
$ dd if=/dev/urandom of=random-test-file-100m bs=1024k count=100
100+0 records in
100+0 records out
102400000 bytes transferred in 10.143507 secs (10095128 bytes/sec)
This is a random file. You should also use shasum -A 256 and make sure the file you are using for test is what you get back. Do also remember 1024 bytes to a KB… use blocksizes of 1024
On linux, create a fast file (https://stackoverflow.com/a/11779492):
fallocate -l 100M test-file-100m
This takes less than a second. The file is not good for testing random behaviors with large files as the generated file is huge, but the same bytes repated for 100M.
To check the size of the sample files, you can use human readable format settings (https://unix.stackexchange.com/a/281113).
MacBook-Air:test user$ ls -lSh
-rw-r–r– 1 user staff 10K Dec 20 19:53 setup.log
One of my projects with IBM Connections Cloud has produced a document which I hope helps you understand IBM Connections Cloud and OAuth – Understanding OAuth 2.0.
I was the primary author collaborating with Elizabeth Bowling and Miguel Estrada to build the document.