diff --git a/org.eclipse.pde.build/src_ant/org/eclipse/pde/internal/build/jarprocessor/AntBasedProcessorExecutor.java b/org.eclipse.pde.build/src_ant/org/eclipse/pde/internal/build/jarprocessor/AntBasedProcessorExecutor.java
index 8f60ba8..43a0496 100644
--- a/org.eclipse.pde.build/src_ant/org/eclipse/pde/internal/build/jarprocessor/AntBasedProcessorExecutor.java
+++ b/org.eclipse.pde.build/src_ant/org/eclipse/pde/internal/build/jarprocessor/AntBasedProcessorExecutor.java
@@ -12,7 +12,6 @@
 
 import java.util.Properties;
 import org.apache.tools.ant.Project;
-import org.eclipse.equinox.internal.p2.jarprocessor.Main.Options;
 import org.eclipse.equinox.p2.jarprocessor.JarProcessor;
 import org.eclipse.equinox.p2.jarprocessor.JarProcessorExecutor;
 
@@ -28,7 +27,7 @@
 		this.antTaskName = antTaskName;
 	}
 
-	public void addSignStep(JarProcessor processor, Properties properties, Options options) {
+	public void addSignStep(JarProcessor processor, Properties properties, JarProcessorExecutor.Options options) {
 		if (signArguments.get(JarProcessorTask.UNSIGN) != null)
 			processor.addProcessStep(new UnsignCommand(properties, options.signCommand, options.verbose));
 		if (signArguments.get(JarProcessorTask.SIGN) != null)
diff --git a/org.eclipse.pde.build/src_ant/org/eclipse/pde/internal/build/jarprocessor/JarProcessorTask.java b/org.eclipse.pde.build/src_ant/org/eclipse/pde/internal/build/jarprocessor/JarProcessorTask.java
index b6e7df5..fce8e6a 100644
--- a/org.eclipse.pde.build/src_ant/org/eclipse/pde/internal/build/jarprocessor/JarProcessorTask.java
+++ b/org.eclipse.pde.build/src_ant/org/eclipse/pde/internal/build/jarprocessor/JarProcessorTask.java
@@ -14,7 +14,7 @@
 import java.util.Properties;
 import org.apache.tools.ant.BuildException;
 import org.apache.tools.ant.Task;
-import org.eclipse.equinox.internal.p2.jarprocessor.Main.Options;
+import org.eclipse.equinox.p2.jarprocessor.JarProcessorExecutor;
 
 /**
  * This task provides massaging facilities for jar files.
@@ -22,7 +22,7 @@
  * 	- 
  */
 public class JarProcessorTask extends Task {
-	private Options options = new Options();
+	private JarProcessorExecutor.Options options = new JarProcessorExecutor.Options();
 	private Properties signArgs = new Properties();
 
 	public static final String ALIAS = "alias"; //$NON-NLS-1$
