|
| 1 | +CFLAGS=-O0 |
| 2 | + |
| 3 | +all: FizzBuzzEnterpriseEdition/bin/FizzBuzzEnterpriseEdition byteman-download-4.0.11 byte-monkey.jar |
| 4 | + |
| 5 | +src: |
| 6 | + git clone https://github.com/EnterpriseQualityCoding/FizzBuzzEnterpriseEdition.git src |
| 7 | + |
| 8 | +byteman-download-4.0.11: |
| 9 | + wget https://downloads.jboss.org/byteman/4.0.11/byteman-download-4.0.11-bin.zip |
| 10 | + unzip byteman-download-4.0.11-bin.zip |
| 11 | + rm byteman-download-4.0.11-bin.zip |
| 12 | + |
| 13 | +byte-monkey.jar: |
| 14 | + wget https://github.com/mrwilson/byte-monkey/releases/download/1.0.0/byte-monkey.jar |
| 15 | + |
| 16 | +FizzBuzzEnterpriseEdition/bin/FizzBuzzEnterpriseEdition: src |
| 17 | + (cd src && ./gradlew assemble && ./gradlew build) |
| 18 | + unzip src/build/distributions/FizzBuzzEnterpriseEdition.zip |
| 19 | + |
| 20 | +run: |
| 21 | + ./FizzBuzzEnterpriseEdition/bin/FizzBuzzEnterpriseEdition |
| 22 | + |
| 23 | +run2: |
| 24 | + java -classpath "./FizzBuzzEnterpriseEdition/lib/*" com.seriouscompany.business.java.fizzbuzz.packagenamingpackage.impl.Main |
| 25 | + |
| 26 | +run3: |
| 27 | + javap -classpath "./FizzBuzzEnterpriseEdition/lib/*" -c com.seriouscompany.business.java.fizzbuzz.packagenamingpackage.impl.Main |
| 28 | + |
| 29 | +run4: |
| 30 | + java -javaagent:./agent1.jar -classpath "./FizzBuzzEnterpriseEdition/lib/*" com.seriouscompany.business.java.fizzbuzz.packagenamingpackage.impl.Main |
| 31 | + |
| 32 | +run5: |
| 33 | + java -javaagent:./agent2.jar -classpath "./FizzBuzzEnterpriseEdition/lib/*" com.seriouscompany.business.java.fizzbuzz.packagenamingpackage.impl.Main |
| 34 | + |
| 35 | +run6: |
| 36 | + java \ |
| 37 | + -javaagent:./byteman-download-4.0.11/lib/byteman.jar=script:throw.btm \ |
| 38 | + -classpath "./FizzBuzzEnterpriseEdition/lib/*" \ |
| 39 | + com.seriouscompany.business.java.fizzbuzz.packagenamingpackage.impl.Main |
| 40 | + |
| 41 | +run7: |
| 42 | + java \ |
| 43 | + -javaagent:byte-monkey.jar=mode:fault,rate:0.5,filter:com/seriouscompany/business/java/fizzbuzz/packagenamingpackage/impl/strategies/SystemOutFizzBuzzOutputStrategy/output \ |
| 44 | + -classpath "./FizzBuzzEnterpriseEdition/lib/*" \ |
| 45 | + com.seriouscompany.business.java.fizzbuzz.packagenamingpackage.impl.Main |
| 46 | + |
| 47 | + |
| 48 | + |
| 49 | +example1-compile: |
| 50 | + javac ./org/my/example1.java |
| 51 | +example1-run: |
| 52 | + java org.my.Example1 |
| 53 | +example1-bytecode: |
| 54 | + javap -c org.my.Example1 |
| 55 | +example1-agent: |
| 56 | + java -javaagent:./agent1.jar org.my.Example1 |
| 57 | + |
| 58 | +example2-compile: |
| 59 | + javac ./org/my/example2.java |
| 60 | +example2-run: |
| 61 | + java org.my.Example2 |
| 62 | +example2-bytecode: |
| 63 | + javap -c org.my.Example2 |
| 64 | + |
| 65 | +.PHONY: run run2 run3 example1-compile example1-run example1-bytecode example2-compile example2-run example2-bytecode |
| 66 | + |
| 67 | +agent1.jar: org/agent/Agent.java org/agent/ClassPrinter.java org/agent/manifest.mf |
| 68 | + javac org/agent/Agent.java |
| 69 | + javac org/agent/ClassPrinter.java |
| 70 | + jar vcmf org/agent/manifest.mf agent1.jar org/agent |
| 71 | + |
| 72 | +agent2.jar: org/agent2/Agent.java org/agent2/ClassInjector.java org/agent2/manifest.mf |
| 73 | + javac -XDignore.symbol.file org/agent2/Agent.java |
| 74 | + javac -XDignore.symbol.file org/agent2/ClassInjector.java |
| 75 | + jar vcmf org/agent2/manifest.mf agent2.jar org/agent2 |
0 commit comments