This readme details the steps necessary to run retrotranslator on a workspace hosting SCA modules and modified Android modules.

1. Download the modified code from: https://svn.apache.org/repos/asf/incubator/tuscany/sandbox/mobile-android

svn checkout https://svn.apache.org/repos/asf/incubator/tuscany/sandbox/mobile-android

2. Download and install the SCA modules from: https://svn.apache.org/repos/asf/incubator/tuscany/java/sca/modules

svn checkout --revision 643746 https://svn.apache.org/repos/asf/incubator/tuscany/java/sca/modules

cd modules

mvn clean install -Dtest=no
mvn -Peclipse eclipse:eclipse -Dtest=no

3. Create a new Eclipse workspace and set the M2_REPO variable as shown below:

mvn -Declipse.workspace=workspace eclipse:add-maven-repo

4. Import the projects from step 1, making sure to uncheck the option to copy projects into the workspace.

5. Set the Android plugin's preferences to point to the folder /tools/adb inside the SDK folder

6. Import the projects from step 2, making sure to uncheck the option to copy projects into the workspace.

7. Add the android.jar to android-jdk-classes

8. Fixe build path entries for JAR's displaying errors on calculator-android:

activation-1.1.jar
axiom-api-1.2.5.jar
cgilib-nodep-2.1_3.jar
geronimo-commonj_1.1_spec-1.0.jar
stax-1.2.0.jar
stax-api-1.0-2.jar

9. Do the same for JAR's on tuscany-host-embedded

stax-1.2.0.jar
android.jar

10. Add android.jar to the following modules:

tuscany-core
tuscany-binding-ejb
tuscany-binding-http
tuscany-binding-jsonrpc
tuscany-binding-rmi
tuscany-binding-rss-rome
tuscany-binding-ws-axis2
tuscany-contribution-groovy
tuscany-host-webapp
tuscany-implementation-das
tuscany-implementation-data-xml
tuscany-implementation-node-runtime
tuscany-implementation-osgi
tuscany-implementation-resource
tuscany-implementation-spring
tuscany-implementation-widget
tuscany-workspace-admin

11. Build workspace

12. Disable the "Java Builder" from all projects

13. Run retrotranslator on mobile-android and modules from the code downloaded in steps 1 and 2, as shown below:

java -jar ../Retrotranslator-1.2.6-bin/retrotranslator-transformer-1.2.6.jar -srcdir ../srcdir -target 1.5 -reflection safe -stripannot -embed . -classpath ../Retrotranslator-1.2.6-bin/retrotranslator-android-1.2.6.jar -verbose

14. Add retrotranslator-android-1.2.6.jar as an external JAR to calculator-android

15. Rebuild workspace

16. Run calculator-android. The result will be a ClassNotFoundException for java.rmi.Remote or java.beans.Introspector

  • No labels