Posts Tagged ‘Windows’
Script to clean WSL and remove Ubuntu from Windows 11
Here is a fully automated PowerShell script that will:
-
Unregister and remove all WSL distros
-
Reset WSL to factory defaults
-
Optionally reinstall WSL cleanly (commented out)
⚠️ You must run this script as Administrator
# ===================================================== # WSL Full Reset Script for Windows 11 # Removes all distros and resets WSL system features # MUST BE RUN AS ADMINISTRATOR # ===================================================== Write-Host "`n== STEP 1: List and remove all WSL distros ==" -ForegroundColor Cyan $distros = wsl --list --quiet foreach ($distro in $distros) { Write-Host "Unregistering WSL distro: $distro" -ForegroundColor Yellow wsl --unregister "$distro" } Start-Sleep -Seconds 2 Write-Host "`n== STEP 2: Disable WSL-related Windows features ==" -ForegroundColor Cyan dism.exe /online /disable-feature /featurename:VirtualMachinePlatform /norestart dism.exe /online /disable-feature /featurename:Microsoft-Windows-Subsystem-Linux /norestart Start-Sleep -Seconds 2 Write-Host "`n== STEP 3: Uninstall WSL kernel update (if present) ==" -ForegroundColor Cyan $wslUpdate = Get-AppxPackage -AllUsers | Where-Object { $_.Name -like "*Microsoft.WSL2*" } if ($wslUpdate) { winget uninstall --id "Microsoft.WSL2" --silent } else { Write-Host "No standalone WSL kernel update found." -ForegroundColor DarkGray } Start-Sleep -Seconds 2 Write-Host "`n== STEP 4: Clean leftover configuration files ==" -ForegroundColor Cyan $paths = @( "$env:USERPROFILE\.wslconfig", "$env:APPDATA\Microsoft\Windows\WSL", "$env:LOCALAPPDATA\Packages\CanonicalGroupLimited*", "$env:LOCALAPPDATA\Docker", "$env:USERPROFILE\.docker" ) foreach ($path in $paths) { Write-Host "Removing: $path" -ForegroundColor DarkYellow Remove-Item -Recurse -Force -ErrorAction SilentlyContinue $path } Write-Host "`n== STEP 5: Reboot Required ==" -ForegroundColor Magenta Write-Host "Please restart your computer to complete the WSL reset process." # Optional: Reinstall WSL cleanly (after reboot) # Uncomment the lines below if you want the script to also reinstall WSL <# Write-Host "`n== STEP 6: Reinstall WSL ==" -ForegroundColor Cyan wsl --install #>
Start Mule ESB as an NT service under a Windows server
Case
You would like to start a Mule ESB instance as an NT service, under a Windows server. You would also like to give a specific name and description
Fix
- add an environment variable
MULE_HOME
, with value the path of Mule install, for instance:C:\jonathan\mule-standalone-3.0.1
- edit the file
%MULE_HOME%\conf\wrapper.conf
- replace the following properties default values:
[java]wrapper.ntservice.name=%MULE_APP%
wrapper.ntservice.displayname=%MULE_APP_LONG%
wrapper.ntservice.description=%MULE_APP_LONG%[/java] - (you can also set other properties related to NT service configuration)
- launch the command:
- then you can see in the administration services that the service has started
- to remove the service, only launch the following command
[java]%MULE_HOME%\bin\mule.bat install -config %MULE_HOME%\bin\mule-conf.xml[/java]
[java]%MULE_HOME%\bin\mule.bat remove[/java]
Known issue:
On certain installations (among them the servers on which CygWin is installed), a conflict may happen between the files %MULE_HOME%\bin\mule
(standard launcher for Unix and Linux) and %MULE_HOME%\bin\mule.bat
(standard launcher for Windows). In this case, rename %MULE_HOME%\bin\mule
as %MULE_HOME%\bin\mule.OLD
sljava.dll / IntelliJ IDEA / ActivIdentity
Case
The administrators tried to install ActivIdentity on my desktop. Then I rebooted my computer and launched IntelliJ IDEA 8.1.4 as usual.
IDEA froze. I tried to launch former versions (8.0, 7.5.4), with the same result. Then I launched the idea.bat
(available in the same folder as the idea.exe
), setting echo on
, to have a little more logs.
Stacktrace
[java]Caused by: java.lang.UnsatisfiedLinkError: Expecting an absolute path of the library: \Program Files\ActivIdentity\SecureLogin\sljava.dll[/java]
Complete stacktrace
[java]C:\Program Files\JetBrains\IntelliJ IDEA 8.1.4\bin>"C:\win32app\Java\jdk1.6.0_01\jre\bin\java.exe" "
-Xms256m" "-Xmx1024m" "-XX:MaxPermSize=140m" "-Xbootclasspath/p:../lib/boot.jar " "-ea" -Xbootclassp
ath/a:../lib/boot.jar -cp "..\lib\bootstrap.jar;..\lib\util.jar;..\lib\jdom.jar;..\lib\log4j.jar;.
.\lib\extensions.jar;..\lib\trove4j.jar;C:\win32app\Java\jdk1.6.0_01\lib\tools.jar" com.intellij.ide
a.Main
java.lang.reflect.InvocationTargetException
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at com.intellij.ide.plugins.PluginManager$2.run(PluginManager.java:126)
at java.lang.Thread.run(Thread.java:619)
Caused by: java.lang.UnsatisfiedLinkError: Expecting an absolute path of the library: \Program Files
\ActivIdentity\SecureLogin\sljava.dll
at java.lang.Runtime.load0(Runtime.java:767)
at java.lang.System.load(System.java:1005)
at com.actividentity.sso.javasso.SSOLoginScriptRunner.(SSOLoginScriptRunner.java:905
)
at com.actividentity.sso.javasso.ConsoleLogger.(Logger.java:54)
at com.actividentity.sso.javasso.Logger.(Logger.java:73)
at com.actividentity.sso.javasso.awt_swing.JavaSSOHook.(JavaSSOHook.java:32)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:
39)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorIm
pl.java:27)
at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
at java.lang.Class.newInstance0(Class.java:355)
at java.lang.Class.newInstance(Class.java:308)
at java.awt.Toolkit.loadAssistiveTechnologies(Toolkit.java:773)
at java.awt.Toolkit.getDefaultToolkit(Toolkit.java:861)
at java.awt.Window.getToolkit(Window.java:1127)
at java.awt.Window.init(Window.java:369)
at java.awt.Window.(Window.java:407)
at java.awt.Frame.(Frame.java:402)
at java.awt.Frame.(Frame.java:367)
at javax.swing.SwingUtilities$SharedOwnerFrame.(SwingUtilities.java:1731)
at javax.swing.SwingUtilities.getSharedOwnerFrame(SwingUtilities.java:1808)
at javax.swing.JOptionPane.getRootFrame(JOptionPane.java:1673)
at com.intellij.idea.MainImpl.b(MainImpl.java:8)
at com.intellij.idea.MainImpl.a(MainImpl.java:79)
at com.intellij.idea.MainImpl.start(MainImpl.java:73)
… 6 more
ERROR: Error while accessing com.intellij.idea.MainImpl.start with arguments: []
java.lang.reflect.InvocationTargetException
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at com.intellij.ide.plugins.PluginManager$2.run(PluginManager.java:126)
at java.lang.Thread.run(Thread.java:619)
Caused by: java.lang.UnsatisfiedLinkError: Expecting an absolute path of the library: \Program Files
\ActivIdentity\SecureLogin\sljava.dll
at java.lang.Runtime.load0(Runtime.java:767)
at java.lang.System.load(System.java:1005)
at com.actividentity.sso.javasso.SSOLoginScriptRunner.(SSOLoginScriptRunner.java:905
)
at com.actividentity.sso.javasso.ConsoleLogger.(Logger.java:54)
at com.actividentity.sso.javasso.Logger.(Logger.java:73)
at com.actividentity.sso.javasso.awt_swing.JavaSSOHook.(JavaSSOHook.java:32)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:
39)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorIm
pl.java:27)
at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
at java.lang.Class.newInstance0(Class.java:355)
at java.lang.Class.newInstance(Class.java:308)
at java.awt.Toolkit.loadAssistiveTechnologies(Toolkit.java:773)
at java.awt.Toolkit.getDefaultToolkit(Toolkit.java:861)
at java.awt.Window.getToolkit(Window.java:1127)
at java.awt.Window.init(Window.java:369)
at java.awt.Window.(Window.java:407)
at java.awt.Frame.(Frame.java:402)
at java.awt.Frame.(Frame.java:367)
at javax.swing.SwingUtilities$SharedOwnerFrame.(SwingUtilities.java:1731)
at javax.swing.SwingUtilities.getSharedOwnerFrame(SwingUtilities.java:1808)
at javax.swing.JOptionPane.getRootFrame(JOptionPane.java:1673)
at com.intellij.idea.MainImpl.b(MainImpl.java:8)
at com.intellij.idea.MainImpl.a(MainImpl.java:79)
at com.intellij.idea.MainImpl.start(MainImpl.java:73)
… 6 more
ERROR: Error while accessing com.intellij.idea.MainImpl.start with arguments: []
java.lang.AssertionError: Error while accessing com.intellij.idea.MainImpl.start with arguments: []
at com.intellij.openapi.diagnostic.DefaultLogger.error(DefaultLogger.java:49)
at com.intellij.openapi.diagnostic.Logger.error(Logger.java:56)
at com.intellij.ide.plugins.PluginManager$2.run(PluginManager.java:130)
at java.lang.Thread.run(Thread.java:619)[/java]
Explanation and Fix
I ran other Java applications, such as Eclipse and Mule ESB. The result was the same.
When you look at the stacktrace, you can see that sun.reflect.NativeConstructorAccessorImpl.newInstance0
calls com.actividentity.sso.javasso.awt_swing.JavaSSOHook
. This makes me think ActivIdentity intercepts Java calls, even of very low level, and checks them before executing them. I don’t know if compiled code of JRE’s jars is modified, or if some methods are inserted through a mechanism similar to AOP. Anyway, the fact is that ActivIdentity is always called, even though I doubt a lot that original HotSpot was designed to do so…
I tried to uninstall ActivIdentity, this had no effect. I looked in Windows regedit but I found nothing. I tried also to check the value of java.library.path
which, for Windows, points to Windows’PATH
environment variable.
Therefore, the only solution I found to fix the issue was to changed the JAVA_HOME
parameter (more accurately: the parameter IDEA_JDK
) from one JDK to another, in my case: from 1.6.0_01 to 1.6.0_18)
How to reboot or shutdown Windows?
Use following commands:
- to shutdow:
shutdown -s -t 0 -f
- to reboot:
shutdown -r -t 0 -f