Question Version de Java

Plus d'informations
il y a 13 ans 9 mois #12113 par David
Version de Java a été créé par David
Bonjour,

J'aimerai récupérer la version de java(JRE) en powershell, j'ai trouvé la commande en DOS mais je n'arrive pas a récupérer ce résultat en powershell.

[code:1]invoke-expression 'java -fullversion'
java.exe : java full version \"1.6.0_29-b11\"
Au niveau de ligne : 1 Caractère : 5
+ java <<<< -fullversion
+ CategoryInfo : NotSpecified: (java full version \"1.6.0_29-b11\":«»String) [], RemoteException
+ FullyQualifiedErrorId : NativeCommandError[/code:1]


Merci d'avance pour votre aide.

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
il y a 13 ans 8 mois #12354 par Matthew BETTON
Réponse de Matthew BETTON sur le sujet Re:Version de Java
Bonsoir,

L'exécutable java.exe comporte un bug (depuis pas mal de temps, à priori). L'information est renvoyée dans le flux d'erreur STDERR.

Donc, pour que cela puisse fonctionner, il faut aller lire ce flux.

Une solution :

[code:1]PS> $javaversion = java -fullversion 2>&1
PS> $javaversion.Exception.Message
PS> java full version \"1.7.0_05-b05\"[/code:1]

'2>&1' permet de rediriger le résultat (en l'occurence, l'erreur) dans la variable $javaversion.

$JavaVersion est alors un objet du type 'System.Management.Automation.ErrorRecord'.

@ +

Matthew

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
il y a 13 ans 8 mois #12361 par David
Réponse de David sur le sujet Re:Version de Java
Pour info, voici le script que j'ai utilisé :

[code:1]#Recherche des versions de Java avec leurs clés de registres
[array]$programme_java=Get-WmiObject -Query \"SELECT * FROM Win32_Product WHERE (Name like '%Java%')\" | select-object Name, Version, IdentifyingNumber

#Récupération de la clé de registre de la version de JRE à désinstaller
$cleregistre = $programme_java | ?{$_.Name -notmatch \"Development Kit\" -and$_.Version -lt \"6.0.20\"} | %{$_.IdentifyingNumber}

#Contrôle sur s'il y a ou non une version à désinstaller
if ($cleregistre -eq $null){
echo \"Il n'y a aucune version de Java à désinstaller\"
Break
}
else{
echo \"Votre version de Java va être désinstallée\"
}


#Désinstallation à partir de la clé de registre
invoke-expression \"msiexec /qn /x '$cleregistre' \"

#Suppression du dossier Java
rmdir -r -f \"C:\Program Files\Java\jre6\"

echo \"Votre version de Java a bien été désinstallée\"[/code:1]

Connexion ou Créer un compte pour participer à la conversation.

Temps de génération de la page : 0.050 secondes
Propulsé par Kunena