[
https://issues.apache.org/jira/browse/SANDBOX-290?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Michael Binz updated SANDBOX-290:
---------------------------------
Attachment: BcelClassTransformer.java
Added constructor that allows to set class resolution to a certain directory.
See
public BcelClassTransformer(File classPathFile).
> [javaflow] Ant task terminates with
> org.apache.bcel.verifier.exc.AssertionViolatedException
> -------------------------------------------------------------------------------------------
>
> Key: SANDBOX-290
> URL: https://issues.apache.org/jira/browse/SANDBOX-290
> Project: Commons Sandbox
> Issue Type: Bug
> Components: Javaflow
> Reporter: Michael Binz
> Attachments: AntRewriteTask.java, BcelClassTransformer.java
>
>
> Unexpected behaviour: When the Javaflow Ant task is executed on a set of
> class files in the file system, then Ant terminates with the error message:
> {{C:\svnx\dev_scream\build.xml:155:
> org.apache.bcel.verifier.exc.AssertionViolatedException: INTERNAL ERROR:
> Missing class: java.lang.ClassNotFoundException: Exception while looking for
> class de.michab.scream.FirstClassObject: java.io.IOException: Couldn't find:
> de/michab/scream/FirstClassObject.class}}
> Expected is, that the task can rewrite the class files without throwing an
> exception.
> The reason for the above behaviour is that currently no explicit Bcel
> repository is set. This repository (org.apache.bcel.util.Repository) is
> responsible for resolving class references while Bcel is working. Since none
> was set explicitly, the implicit default repository is used, which depends on
> the class path.
> The solution for the above problem is that the BcelClassTransformer always
> explicitly installs a SyntheticRepository that points to the task's srcDir.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.