Opened 5 years ago

Closed 18 months ago

#48651 closed enhancement (fixed)

Repeated JRE installation dialog when updating gettext

Reported by: bruce@… Owned by: ryandesign (Ryan Schmidt)
Priority: Normal Milestone:
Component: ports Version:
Keywords: Cc: cssdev, rben01 (Robert)
Port: gettext

Description

When updating gettext on a Mac (10.10.4, but I'm sure it's been an issue for several versions now) without Java installed, the user is prompted a few times with an apparently parentless GUI dialog to install the JRE. The dialog says, "To view this web content, you need to install the Java Runtime Environment." with "More Info..." and "OK" buttons.

This is a bit disconcerting the first time you encounter it, as you are probably off doing something else and it's not obvious what has triggered the behavior.

On IRC it was suggested that this is probably triggered by configure script checking whether Java is present for auto-installation of Java-related components. It was also suggested that perhaps creating a +java variant would help to eliminate these dialogs. That sounds like a good idea to me, but I'm no expert.

Change History (8)

comment:1 Changed 5 years ago by geekosaur

Specifically: currently the Portfile does --disable-native-java which prevents it from building Java libraries to native code using gcj. This does not prevent use of a JVM, however; that would be --disable-java. I suggested adding that to the configure options and then providing a +java variant to remove it from the configure options for those who do want gettext available from Java.

comment:2 Changed 5 years ago by mf2k (Frank Schima)

Keywords: JRE Java dialog removed
Owner: changed from macports-tickets@… to ryandesign@…
Version: 2.3.3

In the future, please Cc the port maintainers (port info --maintainers gettext), if any.

comment:3 Changed 5 years ago by davalpi@…

I want to add the description of this defect as I get a slightly different but more informative parentless dialog.

I'm on current OSX (10.11.1 El Capitan ) and current XCode (xcodebuild -version -> Xcode 7.1 Build version 7B91b).

I do not have any JDK installed (I do not want one) but I have installed some latest JRE (jre-8u65-macosx-x64.dmg) from Oracle.

I clear all before installing as : sudo port -f uninstall installed ; sudo rm -rf /opt/local/var/macports/build/*

When I try to instal gettext I get a parentless GUI dialog that say something like (I'm translating from italian here) : 'To use the command line tool "javac" you have to install an JDK" .

This dialog offer a "More Information..." button that open my browser to http://www.oracle.com/technetwork/java/javase/downloads/index.html that's the Oracle page to download JDKs /JREs.

I get the same dialog when I try to run javac from terminal:

$ javac ; echo Exit Status : $?
No Java runtime present, requesting install.
Exit Status : 1
$ which javac
/usr/bin/javac

Apparently the error is reported but at the same time it trigger this parentless dialog to guide user towards JDK installation procedure.

Another silly thing is that on El Capitan (10.11.1) I have this :

$ ll /usr/bin/java*
lrwxr-xr-x  1 root  wheel  74  1 Ott 14:36 /usr/bin/java -> /System/Library/Frameworks/JavaVM.framework/Versions/Current/Commands/java
lrwxr-xr-x  1 root  wheel  75  1 Ott 14:36 /usr/bin/javac -> /System/Library/Frameworks/JavaVM.framework/Versions/Current/Commands/javac
lrwxr-xr-x  1 root  wheel  77  1 Ott 14:36 /usr/bin/javadoc -> /System/Library/Frameworks/JavaVM.framework/Versions/Current/Commands/javadoc
lrwxr-xr-x  1 root  wheel  75  1 Ott 14:36 /usr/bin/javah -> /System/Library/Frameworks/JavaVM.framework/Versions/Current/Commands/javah
lrwxr-xr-x  1 root  wheel  75  1 Ott 14:36 /usr/bin/javap -> /System/Library/Frameworks/JavaVM.framework/Versions/Current/Commands/javap
lrwxr-xr-x  1 root  wheel  76  1 Ott 14:36 /usr/bin/javaws -> /System/Library/Frameworks/JavaVM.framework/Versions/Current/Commands/javaws

My educated guest is that JRE installer (jre-8u65-macosx-x64.dmg) setup all this to "stimulate" users toward JDK installation and if this is true for all ppl, this is something to keep in mind.

I hope my observation helps. If this is the wrong place to report things like this, I apologize in advance and I wait for better directions.

Last edited 5 years ago by davalpi@… (previous) (diff)

comment:4 Changed 5 years ago by davalpi@…

Another behavior I've observed while installing a fairly complex port (it was wine) is that get this parentless GUI dialog 'To use the command line tool "javac" you have to install an JDK' over and over again.

I try to write down which ports stimulate the dialog while the installation proceeds and I have observed (dynamically) this same behavior on this ports:

  • gettext
  • clang
  • cmanke
  • bison

(this is a partial list).

My setup is : OSX (10.11.1 El Capitan ) and current XCode (xcodebuild -version -> Xcode 7.1 Build version 7B91b) - I do not have any JDK installed (I do not want one) but I have installed some latest JRE (jre-8u65-macosx-x64.dmg) from Oracle.

I clear all before installing as : sudo port -f uninstall installed ; sudo rm -rf /opt/local/var/macports/build/*

There is at least a related ticket about gettext (#49077), but I suspect a more generalized behavior.

I hope my observation helps but I dont know if is the case to CC: other port maintainers or not.

Last edited 5 years ago by davalpi@… (previous) (diff)

comment:5 Changed 5 years ago by cssdev

Cc: css@… added

Cc Me!

comment:6 Changed 2 years ago by rben01 (Robert)

Any updates on this? This is still happening today, three years later.

comment:7 Changed 2 years ago by ryandesign (Ryan Schmidt)

Cc: rben01 added

I agree that it should be fixed, but I have not attempted to do so.

comment:8 Changed 18 months ago by ryandesign (Ryan Schmidt)

Resolution: fixed
Status: newclosed

In bc14fab6bb3f642b867b90c0481e3f7449177d18/macports-ports (master):

gettext: Don't use Java

Closes: #48651
Closes: #49077

Note: See TracTickets for help on using tickets.