dx errors don't interrupt plugin execution
ollide opened this issue · 1 comments
ollide commented
While discussing #24 it became apparent that the plugin currently won't interrupt its execution when dx encounters an error.
Quote from #24
I was able to reproduce your findings and you're right with the cached result that is being used by java2smali.
The plugin operates in 3 sequential steps:
- Trigger a module/project build for the given file (here, IDEA compiles the .java file into one or multiple .class file)
- Run dx.jar to transform the .class file(s) into a .dex file
- Run baksmali to transform the .dex file into the final .smali file
Step 1 fails, if IDEA is unable to compile the project / module. Step 3 fails whenever there's no dex file available from step 2 (this is the error from your first message). Unfortunately step 2 seems to fail silently, so baksmali may run on a previously emitted .dex file instead of throwing an error.
The goal here is to not fail silently and to stop the plugin execution properly.