Closed ejheil closed 3 years ago
You currently installed version of java
is from an old version of the Cask file -- please run
brew uninstall --force java
then
rm -r "$(brew --prefix)/Caskroom/java"
then
brew install java
and this may fix your issue.
Thank you for the response. This did not fix my issue.
I could not force uninstall java:
~ ❯❯❯ brew uninstall --force java
Error: Failed to load cask: java
Cask 'java' is unreadable: undefined method `undent' for #<String:0x00007fc2a4c97048>
Warning: Treating java as a formula.
Warning: Unexpected method 'license' called on Cask dockertoolbox.
Follow the instructions here:
https://github.com/Homebrew/homebrew-cask#reporting-bugs
Error: Cask 'java' is unreadable: undefined method `undent' for #<String:0x00007fc2ac2d6a88>
I deleted the cask dir anyway:
~ ❯❯❯ rm -r "$(brew --prefix)/Caskroom/java"
examine files in directory /usr/local/Caskroom/java? n
I was unable to reinstall java:
~ ❯❯❯ brew install java
Updating Homebrew...
==> Auto-updated Homebrew!
Updated 4 taps (heroku/brew, homebrew/core, homebrew/cask and d12frosted/emacs-plus).
==> New Formulae
as-tree lttng-ust qt-percona-server
enzyme numactl qt-postgresql
glibc pyqt-3d qt-unixodbc
gopass-jsonapi pyqt-builder threemux
haskell-language-server pyqt-networkauth virtualenv
iconsur python-tabulate wllvm
kertish-dfs qt-libiodbc xray
klee qt-mariadb zlib-ng
libunwind qt-mysql
==> Updated Formulae
Updated 546 formulae.
==> Renamed Formulae
kde-extra-cmake-modules -> extra-cmake-modules
kde-karchive -> karchive
kde-kdoctools -> kdoctools
kde-ki18n -> ki18n
kde-threadweaver -> threadweaver
libsasl2 -> cyrus-sasl
minizip2 -> minizip-ng
pyqt5 -> pyqt@5
==> New Casks
airbuddy finisher-fluxx simplelink-msp432e4-sdk
around foobar2000 swiftbar
celestia internxt-drive uniflash
cinderella plasticscm-cloud-edition veepn
code-composer-studio remnote volanta
dnagedcom simplelink-msp432-sdk
==> Updated Casks
Updated 309 casks.
==> Deleted Casks
mist
Error: Failed to load cask: java
Cask 'java' is unreadable: undefined method `undent' for #<String:0x00007fe650b97088>
Warning: Treating java as a formula.
Error: openjdk 13.0.2+8_2 is already installed.
To upgrade to 15.0.2, run:
brew upgrade openjdk
~ ❯❯❯
Brew doctor still fails, complaining about java:
~ ❯❯❯ brew doctor
Warning: Unexpected method 'license' called on Cask dockertoolbox.
Follow the instructions here:
https://github.com/Homebrew/homebrew-cask#reporting-bugs
Error: Cask 'java' is unreadable: undefined method `undent' for #<String:0x00007fa2b8383508>
~ ❯❯❯ brew doctor --verbose --debug ✘ 1
Warning: Unexpected method 'license' called on Cask dockertoolbox.
Follow the instructions here:
https://github.com/Homebrew/homebrew-cask#reporting-bugs
Error: Cask 'java' is unreadable: undefined method `undent' for #<String:0x00007fbe67a192f8>
/usr/local/Caskroom/java/.metadata/1.8.0_121-b13,e9e7ea248e2c4826b92b3f075a80e441/20170320132734.731/Casks/java.rb:82:in `block in load'
/usr/local/Homebrew/Library/Homebrew/cask/cask.rb:61:in `instance_eval'
/usr/local/Homebrew/Library/Homebrew/cask/cask.rb:61:in `config='
/usr/local/Homebrew/Library/Homebrew/cask/cask.rb:48:in `initialize'
/usr/local/Homebrew/Library/Homebrew/cask/cask_loader.rb:43:in `new'
/usr/local/Homebrew/Library/Homebrew/cask/cask_loader.rb:43:in `cask'
/usr/local/Homebrew/Library/Homebrew/cask/cask_loader.rb:87:in `cask'
/usr/local/Caskroom/java/.metadata/1.8.0_121-b13,e9e7ea248e2c4826b92b3f075a80e441/20170320132734.731/Casks/java.rb:1:in `load'
/usr/local/Homebrew/Library/Homebrew/cask/cask_loader.rb:72:in `instance_eval'
/usr/local/Homebrew/Library/Homebrew/cask/cask_loader.rb:72:in `load'
/usr/local/Homebrew/Library/Homebrew/cask/caskroom.rb:45:in `block in casks'
/usr/local/Homebrew/Library/Homebrew/cask/caskroom.rb:39:in `map'
/usr/local/Homebrew/Library/Homebrew/cask/caskroom.rb:39:in `casks'
/usr/local/Homebrew/Library/Homebrew/cmd/doctor.rb:51:in `doctor'
/usr/local/Homebrew/Library/Homebrew/brew.rb:122:in `<main>'
~ ❯❯❯
Should I open a new issue about the continued problem, or stay with it here?
I would be willing to do any manual work to get brew to get rid of java. Or heck, I would cheerfully completely uninstall homebrew and reinstall it if there were an easy way to get all my existing installed formulas back?
I was able to fix this by manually removing ".undent" from the cask metadata file.
I ran into another issue with a different package (kindlegen) which had a different problem with a cask metadata file needing updating. I fixed that one by editing the metadata file.
This all seems to be the same bug as this: https://github.com/Homebrew/homebrew-cask/issues/49716
I then had a bunch of similar errors with an unexpected method "license" being called on different casks, e.g.
Warning: Unexpected method 'license' called on Cask dockertoolbox.
But those I was able to brew uninstall.
I think I'm set now.
--force
.brew update-reset && brew update
and retried my command.brew doctor
, fixed as many issues as possible and retried my command.Description of issue
Brew doctor errors out with errors about dockertoolbox and java
Command that failed
brew doctor
Output of command with
--verbose --debug
Output of
brew doctor --verbose
Output of
brew tap
Note that attempts to untap are thwarted by similar errors.