Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/holyjak/javazone-code-injection
Code for my Code Injection presentation on JavaZone 2011
https://github.com/holyjak/javazone-code-injection
Last synced: 2 months ago
JSON representation
Code for my Code Injection presentation on JavaZone 2011
- Host: GitHub
- URL: https://github.com/holyjak/javazone-code-injection
- Owner: holyjak
- License: epl-1.0
- Created: 2011-04-08T15:17:00.000Z (over 13 years ago)
- Default Branch: master
- Last Pushed: 2013-07-29T12:01:06.000Z (over 11 years ago)
- Last Synced: 2024-10-14T17:51:52.142Z (2 months ago)
- Language: Java
- Homepage:
- Size: 82 KB
- Stars: 13
- Watchers: 2
- Forks: 8
- Open Issues: 0
-
Metadata Files:
- Readme: README
- License: LICENSE.txt
Awesome Lists containing this project
README
Code for my presentation of code injection at JavaZone 2011
Get the code, run it and look for 'THE INJECTED CODE SAYS:' in its output.
= Getting the code =
Point your browser to
https://github.com/jakubholynet/JavaZone-Code-Injection/zipball/master
and a ZIP archive download should start.= Running the examples with Maven =
I've been using Maven 2.2.1.
cd /path/into/the/downloaded/folder/where/pom.xml/is
1. Java Proxy:
mvn -P javaproxy test
2. Javassist:
mvn -P javassist test
3. AspectJ:
mvn -P aspectj test= Running the examples manually =
* Get the dependencies described in pom.xml and their transitive dependencies
* Compile the sources
* Run them:
*# Java Proxy:
*## java -classpath iterate.jz2011.codeinjection.javaproxy.Main
*# Javassist:
*## java -classpath /path/to/javassist-3.14.0-GA.jar:/path/to/classes iterate.jz2011.codeinjection.javassist.JavassistInstrumenter
*## java -classpath target/javassist:/path/to/classes iterate.jz2011.codeinjection.javassist.Main
*# AspectJ:
*## In aspectj-inject-build.xml define maven.plugin.classpath as described
*## ant -f aspectj-inject-build.xml
*## java -classpath "/path/to/classes:/path/to/aspectjrt-1.6.10.jar" iterate.jz2011.codeinjection.aspectj.MainDependencies for the Java Proxy example:
+- net.jakubholy.testing:dbunit-embeddedderby-parenttest:jar:1.2.0:compile
| +- org.apache.derby:derby:jar:10.3.2.1:compile
| +- org.dbunit:dbunit:jar:2.4.7:compile
| | \- commons-collections:commons-collections:jar:3.2.1:compile
| +- junit:junit:jar:3.8.2:compile
| \- org.slf4j:slf4j-api:jar:1.5.6:compile
\- org.slf4j:slf4j-simple:jar:1.5.6:runtime= License =
The code is in the public domain and fully available for any use, i.e. no licensing issues.= Copyleft =
Jakub Holy of Iterate AS, 2011