What if there is an error message that adoptopenjdk8 exists in multiple taps?
When brew cleanup
shows the following error message:
Error: Cask adoptopenjdk8 exists in multiple taps:
homebrew/cask-versions/adoptopenjdk8
adoptopenjdk/openjdk/adoptopenjdk8
How can I resolve this error without reinstalling Homebrew?
FYI some relevant references:
- https://github.com/Homebrew/brew/issues/6112 - looks like an issue to be resolved on Homebrew itself
- https://github.com/AdoptOpenJDK/homebrew-openjdk/issues/106 - original bug report
- https://improve-future.com/en/how-to-solve-the-homebrew-error-cask-adoptopenjdk8-exists-in-multiple-taps.html - solved by reinstalling Homebrew
Here is a quick solution which assumes that Homebrew is up-to-date and there is no need to use any other packages from the adoptopenjdk/openjdk
tap:
Check the state of adoptopenjdk/openjdk
tap and adoptopenjdk8
package:
-
brew tap
- lists which taps are currently enabled -
brew search adoptopenjdk8
- shows whichadoptopenjdk8
casks are available from the enabled taps and whichadoptopenjdk8
casks are currently installed
Now assuming that the adoptopenjdk/openjdk
tap is listed as enabled, remove the adoptopenjdk/openjdk
tap as follows:
brew untap adoptopenjdk/openjdk
Then check what adoptopenjdk8
casks are currently installed. This should show exactly one adoptopenjdk8
cask installed.
At this point, brew cleanup
should work correctly.
My explanation: it appears to me that they added adoptopenjdk8
to the built-in Homebrew caskroom.
Note that it should be OK to do brew tap adoptopenjdk/openjdk
afterwards, if needed. (This has not caused any issues for me so far.)
Another quick solution: remove cask file
sudo rm /usr/local/Homebrew/Library/Taps/homebrew/homebrew-cask-versions/Casks/adoptopenjdk8.rb