<div dir="ltr">Hi Jay,<div><br></div><div><div>> I downloaded and installed Java 1.8 and then I received the following error</div><div>> upon reaching this preinitialization code.</div><div>></div><div>> java.lang.IllegalArgumentException: Cannot handle app name in ij.ImageJ's</div>

<div>> public <init>(java.applet.Applet applet, int mode)</div></div><div><br></div><div>Just from your description, I have no idea what could cause such behavior. If you are able to reproduce reliably on multiple machines, please feel free to open an issue at <a href="https://github.com/imagej/imagej-legacy/issues/new">https://github.com/imagej/imagej-legacy/issues/new</a> and we will investigate. It will be later some time this summer though, after the June 1 release; for now, we definitely recommend sticking to Java 6 or Java 7.</div>

<div><br></div><div>Regards,</div><div>Curtis</div></div><div class="gmail_extra"><br><br><div class="gmail_quote">On Fri, Apr 25, 2014 at 2:23 PM, Jay Warrick <span dir="ltr"><<a href="mailto:warrick@wisc.edu" target="_blank">warrick@wisc.edu</a>></span> wrote:<br>

<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Hi All,<br>
<br>
I'm creating a single instance of ImageJ (ImageJ2) in my program and using this instance to access the various services of ImageJ2. However, in previous work with Curtis Rueden, we found we had to add the following static code to the class which I use to access this single ImageJ instance so that the services load (I believe because of the presence of the ImageJ1 jar included along with the ImageJ2 group of jars).<br>


<br>
static<br>
{<br>
        DefaultLegacyService.preinit();<br>
}<br>
<br>
However I ran into the following issue.<br>
<br>
With Java 1.6 and 1.7 installed on my system everything worked great. No issues. I downloaded and installed Java 1.8 and then I received the following error upon reaching this preinitialization code.<br>
<br>
java.lang.IllegalArgumentException: Cannot handle app name in<br>
ij.ImageJ's public <init>(java.applet.Applet applet, int mode)<br>
<br>
at imagej.legacy.CodeHacker.replaceAppNameInCall(CodeHacker.java:498)<br>
<br>
at imagej.legacy.LegacyExtensions.insertAppNameHooks(LegacyExtensions.java:591)<br>
<br>
at imagej.legacy.LegacyExtensions.injectHooks(LegacyExtensions.java:516)<br>
<br>
at imagej.legacy.LegacyInjector.injectHooks(LegacyInjector.java:154)<br>
<br>
at imagej.legacy.LegacyInjector.injectHooks(LegacyInjector.java:57)<br>
<br>
at imagej.legacy.DefaultLegacyService.<clinit>(DefaultLegacyService.java:109)<br>
<br>
I then used the old but useful "Java Preferences.app" to change the default order of preferred jres. I moved 1.7 ahead of 1.8 and the application worked again. Then I put 1.8 above 1.8 again and the problem no longer occurred. I can't repeat the problem on my computer but another person is having the same issue. I'll likely have him do what I did but this seems like a silly work around. Do you know what might be the root cause? Am I just using the ImageJ2 project with inappropriate/unsupported jre's even though it eventually works under 1.8.<br>


<br>
Thanks,<br>
<br>
Jay<br>
<br>
<br>
_______________________________________________<br>
ImageJ-devel mailing list<br>
<a href="mailto:ImageJ-devel@imagej.net">ImageJ-devel@imagej.net</a><br>
<a href="http://imagej.net/mailman/listinfo/imagej-devel" target="_blank">http://imagej.net/mailman/listinfo/imagej-devel</a><br>
</blockquote></div><br></div>