2012-11-09 19 views
39

Sono in esecuzione Mac OSX Snow Leopard.Dove è finito jvisualvm?

Ho sempre aggiornato Java utilizzando le normali funzionalità di Aggiornamento software di Mac OSX.

Ho utilizzato lo strumento Java jvisualvm in passato con grande successo.

Questa mattina ho digitato jvisualvm nella riga di comando come faccio spesso. Ho ottenuto il seguente errore:

$ jvisualvm 
Unable to locate an executable at "/System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home/bin/jvisualvm" (-1) 

Tutti gli altri strumenti Java (java, javac, jps, ecc) funzionano bene.

/System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home/bin infatti non contiene jvisualvm (tutto ad un tratto).

/usr/libexec/java_home rendimenti:

$ /usr/libexec/java_home 
/System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home 

WTF?

+1

Prova/System/Library /Frameworks/JavaVM.framework/Versions/A/Commands/jvisualvm –

+0

Nessun dado: '/ System/Library/Framewor ks/JavaVM.framework/Versions/A/Commands/jvisualvm Impossibile trovare un eseguibile in "/System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home/bin/jvisualvm" (-1) ' –

+0

@LairdNelson stesso qui :(questo è molto strano. Ho scaricato VisualVM a mano e funziona, una specie di. Ad esempio, non si connette a nessuna app per profilo. – Eugene

risposta

28

sembra un disguido di collegamenti; il collegamento simbolico/usr/bin/jvisualvm punta a qualcosa che non esiste (come le persone hanno sottolineato sopra). A quanto pare l'eseguibile jvisualvm (stub) esiste e il modo per risolvere questo problema per ora è quello di eseguire:

cd /System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home/bin 

sudo ln -s /System/Library/Java/Support/VisualVM.bundle/Contents/Home/bin/jvisualvm . 

Questo richiede privilegi sudo e crea il link simbolico mancante, indicando il bundle VisualVM. Non ho idea del perché sia ​​successo, ma l'aggiornamento all'ultimo XCode 4.5.2 non ha risolto automaticamente questo problema. Sono in esecuzione MacOS X 10.7.5 e java 1.6.0_37

+0

Grazie per l'input; Proverò a breve e ti darò la risposta se funziona. –

+4

Questo approccio non funziona più (almeno in Mountain Lion). Vedi http://stackoverflow.com/a/13690431/1395668 –

+6

Si prega di prendere in considerazione la modifica della risposta accettata a una risposta che richiede al lettore di scaricare JVisualVM dmg. –

1

posso correre solo la versione .app di jvisualvm sul mio MBP leone di montagna

open /usr/share/java/Tools/Java\ VisualVM.app 
+0

Puoi aggiungere qualche spiegazione sul perché? –

+1

Anche questo non funziona per me; tentare di aprirlo lanciare solo brevemente ... non lancia niente, davvero. Analizzando il sottostante link simbolico 'jvisualvm', vedo che punta alla stessa posizione fallita:' s -al/usr/share/java/Tools/Java \ VisualVM.app/Contents/MacOS/jvisualvm lrwxr-xr-x 1 root wheel 97 ago 2 2010/usr/share/java/Tools/Java VisualVM.app/Contents/MacOS/jvisualvm -> /System/Library/Frameworks/JavaVM.framework/Resources/VisualVM.bundle/Contents/Home/bin/ jvisualvm' –

+0

Non sono sicuro del perché, immagino che qualcuno di Apple sia stato confuso da tutti i link e cancellato qualcosa. – David

26

Sembra che il pacchetto di supporto sia stato rimosso all'aggiornamento. https://discussions.apple.com/thread/4474992?start=0&tstart=0

Scaricare il pacchetto da utilizzare come soluzione alternativa. http://visualvm.java.net/download.html

EDIT:

Utilizzare questo link per il download: https://java.net/projects/visualvm/downloads/download/release132/VisualVM_132.d mg

+0

L'ultimo pacchetto .dmg (1.3.7) non sembra funzionare con ultima azione Java-6 su OSX 10.9.1. Si lamenta: 'LSOpenURLsWithRole() non è riuscito con errore -10810 per il file/Applications/VisualVM.app' – alboko

+6

rispondendo a me stesso: la versione 1.3.5 funziona ancora su Mavericks. Scaricalo da [https: // java.net/projects/visualvm/download/download/release132/VisualVM_132.dmg] (https://java.net/projects/visualvm/downloads/download/release132/VisualVM_132.dmg) ed esegui l'aggiornamento per scaricare il motore più recente. – alboko

17

Ho scaricato l'virtualvm (.dmg from java.net) e che funziona per me sul mio leone di montagna.

enter image description here

screen shot of VisualVM Download page with specific option for Mac OS X application

+0

Virtualvm è in realtà più attraente visivamente di jconsole e offre maggiori funzionalità se si desidera eseguire il profiling. – hko19

3

Se si sta già utilizzando NetBeans, un'altra soluzione è quella di utilizzare il suo profiler. Nella versione 7.3:

  • avviare l'applicazione Java dalla riga di comando, desktop o .

  • In NetBeans, selezionare Profile > Attach Profiler.

  • Selezionare Attach to: <external Application>.

  • Specificare le opzioni di analisi desiderate.

  • Fare clic sul pulsante Attach.

  • Scegliere l'applicazione di destinazione.

Profiler dialog

-2

A volte è molto semplice ... è necessario installare VisualVM via

sudo apt-get install visualvm 

per localizzare il file, utilizzare

dpkg -L visualvm 
+0

apt-get è un comando di Linux, non per Mac OS X – muttonlamb

+1

Argh, mi dispiace, ho in qualche modo trascurato che stava usando un Mac. > _ < – Sarah

+0

Si noti inoltre che il programma è normalmente già installato con JDK. –

Problemi correlati