You are not logged in.

#1 2026-04-01 10:14:20

montenegro
Member
Registered: 2026-04-01
Posts: 10

visualvm: require "which"

it is possible to end up with broken visualvm startup script because which is not installed with my minimal installation
i can't register on the gitlab (its broken for me), nor contribute to the PKGBUILD properly

Last edited by montenegro (2026-04-05 10:31:05)

Offline

#2 2026-04-01 10:31:54

Scimmia
Fellow
Registered: 2012-09-01
Posts: 13,694

Re: visualvm: require "which"

montenegro wrote:

it is possible...

possible how?

Offline

#3 2026-04-01 10:36:53

montenegro
Member
Registered: 2026-04-01
Posts: 10

Re: visualvm: require "which"

Scimmia wrote:
montenegro wrote:

it is possible...

possible how?

installing arch linux without arch install

Offline

#4 2026-04-01 10:40:21

5hridhyan
Member
From: Asia
Registered: 2025-12-25
Posts: 503

Re: visualvm: require "which"


---

Offline

#5 2026-04-01 10:41:35

montenegro
Member
Registered: 2026-04-01
Posts: 10

Re: visualvm: require "which"

Offline

#6 2026-04-01 10:54:09

5hridhyan
Member
From: Asia
Registered: 2025-12-25
Posts: 503

Re: visualvm: require "which"

my bad I thought you were facing trouble installing from the core, so I suggested try from aur to get your work done smile


---

Offline

#7 2026-04-01 10:58:48

Scimmia
Fellow
Registered: 2012-09-01
Posts: 13,694

Re: visualvm: require "which"

montenegro wrote:
Scimmia wrote:
montenegro wrote:

it is possible...

possible how?

installing arch linux without arch install

well archinstall doesn't mean much here, but are you saying that the stock script as it's shipped in the package requires which? If so, yeah, you need to file this on gitlab. How is it broken for you?

Offline

#8 2026-04-01 11:02:32

montenegro
Member
Registered: 2026-04-01
Posts: 10

Re: visualvm: require "which"

Scimmia wrote:
montenegro wrote:
Scimmia wrote:

possible how?

installing arch linux without arch install

well archinstall doesn't mean much here, but are you saying that the stock script as it's shipped in the package requires which? If so, yeah, you need to file this on gitlab. How is it broken for you?

Its just plain and simple No such command thingy, that fixes with installing which as the arch linux package from core repo.

Offline

#9 2026-04-01 11:03:18

montenegro
Member
Registered: 2026-04-01
Posts: 10

Re: visualvm: require "which"

"which" is required by base-devel, not base

Offline

#10 2026-04-01 15:18:18

seth
Member
From: Don't DM me only for attention
Registered: 2012-09-03
Posts: 74,257

Re: visualvm: require "which"

https://archlinux.org/packages/extra/x86_64/visualvm/ doesn't directly depend on which, if it actually requires it that'd be a packaging bug - any possible indirect dependency doesn't suffice.
But what Scimmia want's to know is what

Its just plain and simple No such command thingy,

actually means =>  https://bbs.archlinux.org/viewtopic.php?id=57855

What command invokes which how/where, because it's not in https://github.com/oracle/visualvm/blob … r/visualvm
You can add "set -x" under the shebang to trace the script

Offline

#11 2026-04-01 16:07:12

montenegro
Member
Registered: 2026-04-01
Posts: 10

Re: visualvm: require "which"

registered and sent an email for the gitlab account approval, was about to report packaging issue

Last edited by montenegro (2026-04-01 16:07:55)

Offline

#12 2026-04-05 10:30:54

montenegro
Member
Registered: 2026-04-01
Posts: 10

Re: visualvm: require "which"

Since i have not my account on the GitLab approved yet. Im asking to file the bug report for me.

VisualVM package fails to start. Redirecting stdout and stderr to the file outputs this.

+ PRG=/usr/bin/visualvm
+ '[' -h /usr/bin/visualvm ']'
++ ls -ld /usr/bin/visualvm
+ ls='lrwxrwxrwx 1 root root 32 Mar  9 23:06 /usr/bin/visualvm -> /usr/share/visualvm/bin/visualvm'
++ expr 'lrwxrwxrwx 1 root root 32 Mar  9 23:06 /usr/bin/visualvm -> /usr/share/visualvm/bin/visualvm' : '^.*-> \(.*\)$'
+ link=/usr/share/visualvm/bin/visualvm
+ expr /usr/share/visualvm/bin/visualvm : '^/'
+ PRG=/usr/share/visualvm/bin/visualvm
+ '[' -h /usr/share/visualvm/bin/visualvm ']'
++ dirname /usr/share/visualvm/bin/visualvm
+ '[' -f /usr/share/visualvm/bin/../Resources/visualvm/etc/visualvm.conf ']'
++ dirname /usr/share/visualvm/bin/visualvm
+ progdir=/usr/share/visualvm/bin
++ pwd
+ old=/home/user
+ cd /usr/share/visualvm/bin/..
++ pwd
+ basedir=/usr/share/visualvm
+ cd /home/user
+ case "`uname`" in
++ uname
+ DEFAULT_USERDIR_ROOT=/home/user/.visualvm
+ DEFAULT_CACHEDIR_ROOT=/home/user/.cache/visualvm
+ '[' -f /usr/share/visualvm/bin/../lib/visualvm/etc/visualvm.conf ']'
+ '[' -f /usr/share/visualvm/bin/../etc/visualvm.conf ']'
+ . /usr/share/visualvm/bin/../etc/visualvm.conf
++ visualvm_default_userdir=/home/user/.visualvm/2.2.1
++ visualvm_default_cachedir=/home/user/.cache/visualvm/2.2.1
++ visualvm_default_options='-J-Dawt.useSystemAAFontSettings=on -J-Xms24m -J-Xmx768m -J-Dnetbeans.accept_license_class=org.graalvm.visualvm.modules.startup.AcceptLicense -J-Dnetbeans.importclass=org.graalvm.visualvm.modules.startup.ImportSettings -J-Dsun.jvmstat.perdata.syncWaitMs=10000 -J-Dsun.java2d.noddraw=true -J-Dsun.java2d.d3d=false -J-DTopSecurityManager.disable=true -J-Dorg.netbeans.core.TimeableEventQueue.quantum=360000 -J-Dpolyglot.js.nashorn-compat=true -J-Dsun.misc.URLClassPath.disableJarChecking=true -J-Djdk.attach.allowAttachSelf=true -J-Dorg.openide.util.ImageUtilities.level=950 -J--add-exports=java.desktop/com.sun.java.swing.plaf.gtk=ALL-UNNAMED -J--add-exports=java.desktop/sun.awt=ALL-UNNAMED -J--add-exports=jdk.internal.jvmstat/sun.jvmstat.monitor.event=ALL-UNNAMED -J--add-exports=jdk.internal.jvmstat/sun.jvmstat.monitor=ALL-UNNAMED -J--add-exports=java.desktop/sun.swing=ALL-UNNAMED -J--add-exports=jdk.attach/sun.tools.attach=ALL-UNNAMED -J--add-opens=java.desktop/sun.awt.X11=ALL-UNNAMED -J--add-opens=java.desktop/javax.swing.plaf.synth=ALL-UNNAMED -J--add-opens=java.base/java.net=ALL-UNNAMED -J--add-opens=java.base/java.lang.ref=ALL-UNNAMED -J--add-opens=java.base/java.lang=ALL-UNNAMED -J--add-opens=java.desktop/javax.swing=ALL-UNNAMED -J--add-opens=java.desktop/javax.swing.plaf.basic=ALL-UNNAMED -J-XX:+IgnoreUnrecognizedVMOptions -J-Dnetbeans.logger.console=true'
++ visualvm_jdkhome=
+ export DEFAULT_USERDIR_ROOT
+ userdir=/home/user/.visualvm/2.2.1
+ cachedir=/home/user/.cache/visualvm/2.2.1
+ founduserdir=
+ foundcachedir=
+ '[' -f /home/user/.visualvm/2.2.1/etc/visualvm.conf ']'
+ '[' '!' -f /usr/share/visualvm/etc/visualvm.clusters ']'
++ readClusters
++ absolutize_paths
++ read path
++ grep -v '^$'
++ tr '\012' :
++ grep -v platform
++ grep -v '^#' /usr/share/visualvm/etc/visualvm.clusters
++ read X
++ expr visualvm : '/.*'
++ echo /usr/share/visualvm/visualvm
++ read X
++ '[' -d /usr/share/visualvm/visualvm ']'
++ cd /usr/share/visualvm/visualvm
++ pwd
++ read path
+ visualvm_clusters=/usr/share/visualvm/visualvm:
+ '[' '!' -z '' ']'
+ grep -v -- -J-Xmx
+ case "`uname`" in
++ uname
+ eval launchNbexec --jdkhome '"$visualvm_jdkhome"' --branding visualvm --clusters '"$visualvm_clusters"' -J-Dawt.useSystemAAFontSettings=on -J-Xms24m -J-Xmx768m -J-Dnetbeans.accept_license_class=org.graalvm.visualvm.modules.startup.AcceptLicense -J-Dnetbeans.importclass=org.graalvm.visualvm.modules.startup.ImportSettings -J-Dsun.jvmstat.perdata.syncWaitMs=10000 -J-Dsun.java2d.noddraw=true -J-Dsun.java2d.d3d=false -J-DTopSecurityManager.disable=true -J-Dorg.netbeans.core.TimeableEventQueue.quantum=360000 -J-Dpolyglot.js.nashorn-compat=true -J-Dsun.misc.URLClassPath.disableJarChecking=true -J-Djdk.attach.allowAttachSelf=true -J-Dorg.openide.util.ImageUtilities.level=950 -J--add-exports=java.desktop/com.sun.java.swing.plaf.gtk=ALL-UNNAMED -J--add-exports=java.desktop/sun.awt=ALL-UNNAMED -J--add-exports=jdk.internal.jvmstat/sun.jvmstat.monitor.event=ALL-UNNAMED -J--add-exports=jdk.internal.jvmstat/sun.jvmstat.monitor=ALL-UNNAMED -J--add-exports=java.desktop/sun.swing=ALL-UNNAMED -J--add-exports=jdk.attach/sun.tools.attach=ALL-UNNAMED -J--add-opens=java.desktop/sun.awt.X11=ALL-UNNAMED -J--add-opens=java.desktop/javax.swing.plaf.synth=ALL-UNNAMED -J--add-opens=java.base/java.net=ALL-UNNAMED -J--add-opens=java.base/java.lang.ref=ALL-UNNAMED -J--add-opens=java.base/java.lang=ALL-UNNAMED -J--add-opens=java.desktop/javax.swing=ALL-UNNAMED -J--add-opens=java.desktop/javax.swing.plaf.basic=ALL-UNNAMED -J-XX:+IgnoreUnrecognizedVMOptions -J-Dnetbeans.logger.console=true '"$@"'
++ launchNbexec --jdkhome '' --branding visualvm --clusters /usr/share/visualvm/visualvm: -J-Dawt.useSystemAAFontSettings=on -J-Xms24m -J-Xmx768m -J-Dnetbeans.accept_license_class=org.graalvm.visualvm.modules.startup.AcceptLicense -J-Dnetbeans.importclass=org.graalvm.visualvm.modules.startup.ImportSettings -J-Dsun.jvmstat.perdata.syncWaitMs=10000 -J-Dsun.java2d.noddraw=true -J-Dsun.java2d.d3d=false -J-DTopSecurityManager.disable=true -J-Dorg.netbeans.core.TimeableEventQueue.quantum=360000 -J-Dpolyglot.js.nashorn-compat=true -J-Dsun.misc.URLClassPath.disableJarChecking=true -J-Djdk.attach.allowAttachSelf=true -J-Dorg.openide.util.ImageUtilities.level=950 -J--add-exports=java.desktop/com.sun.java.swing.plaf.gtk=ALL-UNNAMED -J--add-exports=java.desktop/sun.awt=ALL-UNNAMED -J--add-exports=jdk.internal.jvmstat/sun.jvmstat.monitor.event=ALL-UNNAMED -J--add-exports=jdk.internal.jvmstat/sun.jvmstat.monitor=ALL-UNNAMED -J--add-exports=java.desktop/sun.swing=ALL-UNNAMED -J--add-exports=jdk.attach/sun.tools.attach=ALL-UNNAMED -J--add-opens=java.desktop/sun.awt.X11=ALL-UNNAMED -J--add-opens=java.desktop/javax.swing.plaf.synth=ALL-UNNAMED -J--add-opens=java.base/java.net=ALL-UNNAMED -J--add-opens=java.base/java.lang.ref=ALL-UNNAMED -J--add-opens=java.base/java.lang=ALL-UNNAMED -J--add-opens=java.desktop/javax.swing=ALL-UNNAMED -J--add-opens=java.desktop/javax.swing.plaf.basic=ALL-UNNAMED -J-XX:+IgnoreUnrecognizedVMOptions -J-Dnetbeans.logger.console=true
+++ grep -v '^#' /usr/share/visualvm/etc/visualvm.clusters
+++ grep -v '^$'
+++ grep platform
+++ read X
+++ head -n 1
++ nbexec=
++ '[' '!' -n '' ']'
++ nbexec=/usr/share/visualvm/platform/lib/nbexec
++ sh=sh
++ '[' -x /bin/bash ']'
++ sh=/bin/bash
++ '[' '' = yes ']'
++ '[' '' = yes ']'
++ exec /bin/bash /usr/share/visualvm/platform/lib/nbexec --userdir /home/user/.visualvm/2.2.1 --cachedir /home/user/.cache/visualvm/2.2.1 --jdkhome '' --branding visualvm --clusters /usr/share/visualvm/visualvm: -J-Dawt.useSystemAAFontSettings=on -J-Xms24m -J-Xmx768m -J-Dnetbeans.accept_license_class=org.graalvm.visualvm.modules.startup.AcceptLicense -J-Dnetbeans.importclass=org.graalvm.visualvm.modules.startup.ImportSettings -J-Dsun.jvmstat.perdata.syncWaitMs=10000 -J-Dsun.java2d.noddraw=true -J-Dsun.java2d.d3d=false -J-DTopSecurityManager.disable=true -J-Dorg.netbeans.core.TimeableEventQueue.quantum=360000 -J-Dpolyglot.js.nashorn-compat=true -J-Dsun.misc.URLClassPath.disableJarChecking=true -J-Djdk.attach.allowAttachSelf=true -J-Dorg.openide.util.ImageUtilities.level=950 -J--add-exports=java.desktop/com.sun.java.swing.plaf.gtk=ALL-UNNAMED -J--add-exports=java.desktop/sun.awt=ALL-UNNAMED -J--add-exports=jdk.internal.jvmstat/sun.jvmstat.monitor.event=ALL-UNNAMED -J--add-exports=jdk.internal.jvmstat/sun.jvmstat.monitor=ALL-UNNAMED -J--add-exports=java.desktop/sun.swing=ALL-UNNAMED -J--add-exports=jdk.attach/sun.tools.attach=ALL-UNNAMED -J--add-opens=java.desktop/sun.awt.X11=ALL-UNNAMED -J--add-opens=java.desktop/javax.swing.plaf.synth=ALL-UNNAMED -J--add-opens=java.base/java.net=ALL-UNNAMED -J--add-opens=java.base/java.lang.ref=ALL-UNNAMED -J--add-opens=java.base/java.lang=ALL-UNNAMED -J--add-opens=java.desktop/javax.swing=ALL-UNNAMED -J--add-opens=java.desktop/javax.swing.plaf.basic=ALL-UNNAMED -J-XX:+IgnoreUnrecognizedVMOptions -J-Dnetbeans.logger.console=true
/usr/share/visualvm/platform/lib/nbexec: line 165: which: command not found
/usr/share/visualvm/platform/lib/nbexec: line 167: which: command not found
/usr/share/visualvm/platform/lib/nbexec: line 39: cd: null directory
/usr/share/visualvm/platform/lib/nbexec: line 436: /home/user/bin/java: No such file or directory

The script lacks both the check for "which" and the "which" binary on the system.
The solution would be to require which as a dependency that presents on the arch's linux core repository, which reliefs the users to install the which manually.

Offline

#13 2026-04-05 18:07:01

seth
Member
From: Don't DM me only for attention
Registered: 2012-09-03
Posts: 74,257

Offline

Board footer

Powered by FluxBB