"Set Scale" problem since updating OS X High Sierra (10.13)

scaled
high-sierra
mac-os
java
analyze-particles
imagej
measure
Tags: #<Tag:0x00007fd541f3b010> #<Tag:0x00007fd541f3ade0> #<Tag:0x00007fd541f3ac28> #<Tag:0x00007fd541f3aa48> #<Tag:0x00007fd541f3a890> #<Tag:0x00007fd541f3a5c0> #<Tag:0x00007fd541f3a3b8>

#1

Since updating my Mac OS X to High Sierra (version 10.13), I have been unable to Set Scale (Analyse > Set Scale), in order to perform measurements on my images.

More specifically, I am able to change any of the fields within the “Set Scale” dialog (Distance in pixels, Known distance, Pixel aspect ratio, etc.). I have tried “Click to Remove Scale”, in case there was one already assigned, but this does not work either. Scale remains as “< no scale >”.

I have also tried measuring on my image first (to determine the number of pixels I wish to set as my scale), but this does not get applied automatically in the “Set Scale” window as it previously did.

I am using the latest version of imageJ (1.50i), + Java 1.6.0_65, 64-bit. The Java installed on my machine is the latest Version 8, Update 144, build 1.8.0_144-b01.

Is anyone able to find out why I am unable to set scale and make measurements? Your help would be much appreciated!


Issues with OS X High Sierra OS update
Unable to type to set scale
#2

I have not yet upgraded to 10.13 personally, so cannot investigate thoroughly right now, but I am curious: does it work if you download the latest version of Fiji from https://fiji.sc#download? As of this writing, that package includes Java 1.8.0_66. And what if you launch ImageJ with a different version of Java? Specifically, the latest version of Java 8? Does that behave any differently?


#3

Hi ctrueden,

Thanks very much for your suggestions! I can confirm that:

– The problem is resolved using the latest version of Fiji (ImageJ 2.0.0-rc-61/1.51n; Java 1.8.0_66 [64-bit])
– The problem is also resolved launching ImageJ with my current installed version of Java (Version 8, Update 144, build 1.8.0_144-b01). I did this by opening “ij.jar”, after copying it from “Contents/Resources/Java” into my ImageJ directory.

Does this suggest it could be a compatibility problem with the innate imageJ Java version (1.6.0_65, 64-bit) and Mac OS X 10.13?


Unable to change numbers in Set Scale dialog
#4

Perhaps. More data from other users would be useful here.

I am not sure what you mean by “innate ImageJ Java version”, though: on macOS, Java 6 (e.g., version 1.6.0_65) is installed/available as part of the OS, not bundled with ImageJ. Newer macOS versions do not distribute Java 6 anymore, and in fact when you upgrade macOS, it often gets uninstalled. Since you have 1.6.0_65 specifically, I am guessing you installed it yourself from the Apple web site.

You can run this script from CLI to analyze which Javas are installed on your system in more detail.


#5

Hi there,

I had the exact same problem as you today. I so far have been using the Fiji solution workaround which works, but I would really like to do the second solution because I don’t like having 2 redundant programs on my limited space computer. I have not yet been able to make the other resolution work as I cannot find the ij.jar file you mention. When I got to my Contents/Resources/Java within “Libraries”, I just get a lot of folders with languages.lproj, and within each of those, there’s a file called “aqua.properties” and “serviceui.properties”. If I access the Java folder through the “System” instead, there’s two folders, called “Extensions” and “Support”, which contain “MRJToolkit.jar” and “CoreDeploy.bundle” respectively. Any ideas? My Java is also Version 8, but now at Update 161, build 1.8.0_161.b12. Thanks in advance!


#6

@Carrie I do not fully understand your message. But since the discussion above, I upgraded to macOS 10.13 High Sierra, and I can say that in my experience, Apple Java 6 now has grievous issues. In particular, keyboard events now throw some kind of exception:

2018-02-19 12:50:31.986 java[88602:3072807] *** Assertion failure in -[NSEvent _cgsEventRecord], /BuildRoot/Library/Caches/com.apple.xbs/Sources/AppKit/AppKit-1561.20.106/AppKit.subproj/NSEvent.m:1972
Exception in thread "AWT-EventQueue-0" java.lang.RuntimeException: Non-Java exception raised, not handled! (Original problem: Deprecated in 10_12... DO NOT EVER USE CGSEventRecord directly. Bad things, man.... bad things.)
	at apple.awt.ComponentModel._handleEvent(Native Method)
	at apple.awt.ComponentModel.handleEvent(ComponentModel.java:273)

(I actually tweeted about it back in November, but unfortunately did not follow up on this thread at that time.)

This causes several types of kinds of badness, including the “Set Scale” issue described above, and keyboard shortcuts not triggering commands (e.g. shift+B does not open Blobs, L does not open Command Finder).

The gist is: do not use Java 6 + macOS High Sierra; you need Java 8 now.

Happy to be proven wrong if anyone knows a way to make it work better.