2019年8月29日木曜日

MacでJavaのバージョンを切り替える

概要

私は開発の都合でいくつかのバージョンのJavaをMacにインストールしています。時々によってバージョンを切り替えながら作業をしているので、切り替える方法のメモを残しておこうと思います。

手順

  1. .bashrc の作成
    .bashrc に JAVA_HOME と PATH を書き込んで保存します。
    vi ~/.bashrc
    
    .bashrcには下記のように書き込みます。下記の場合、 1.8 となっている箇所がJavaのバージョンです。切り替える時はこの部分を 1.7 や 11 といったように書き換えます。
    export JAVA_HOME=`/System/Library/Frameworks/JavaVM.framework/Versions/A/Commands/java_home -v "1.8"`
    PATH=$JAVA_HOME/bin:$PATH
    
  2. .bashrc の読み込み
    .bashrc はシェルの起動時に1度だけ読み込まれるファイルです。そのため .bashrc を書き換えただけでは変更が bash に反映されません。下記コマンドで読み込む必要があります。
    source ~/.bashrc

2019年8月28日水曜日

CircleCI 2.0 を使っているのに 2.0 にアップグレードするように Service Alert が表示される

困ったこと

CircleCIを利用しており、設定直後は正常に利用することが出来ていました。ところが、特に設定を変更したりしていないのですが、アラートが表示されるようになりました。
Service alert: Your project references CircleCI 1.0 or it has no configuration. CircleCI 1.0 and projects without configuration files are no longer supported. You must update your project to use CircleCI 2.0 configuration to continue. Learn more.
アラートの内容を読むと利用しているバージョンが1.0であること、またはコンフィグファイル(.circleci/config.yml)が存在していないことが原因のようです。
CircleCIの公式サイトを見ると下記のような記述を見つけました。
The CircleCI 1.0 cloud infrastructure is no longer available as of March 15, 2019.
2019年3月15日をもってCircleCI 1.0は利用できなくなるという記述です。しかし、CircleCIを導入したのは2019年の8月に入ってからです。これまでアラートが表示されずに利用できていたので、2.0を利用していたと考えられます。
また、 .circleci/config.yml は存在していました。

調べたこと

.circleci/config.yml が存在しているため、ここに記述した内容に誤りがあるのではないかと思いました。
英語で書かれているので若干自信はありませんが、 .circleci/config.yml に誤りはないようでした。

解決

同じ問題が発生していた方がいたようで、解決することが出来ました。
上記リンク先の中程に以下のような記述があります。
This banner should go away once the 1.0 jobs fall off the jobs list. If it’s still showing please open a ticket so we can take a look.
ジョブリストに 1.0 のものが含まれているとアラートが表示されるようになっているようです。
過去のジョブは不要なので、いま開発中のプロジェクトだけ指定してジョブリストを表示させたらアラートが消えました。管理画面のJOBSにプロジェクト名が一覧表示されています。対象のプロジェクト名をクリックすることでプロジェクトの指定が出来ました。

2019年8月27日火曜日

MariaDBが突然起動できなくなったときにやったこと

概要

MacのMariaDBが突然起動出来なくなりました。MariaDBの設定を変更したりしていなかったため、起動出来なくなった原因は不明です。以下のようなエラーメッセージが表示されていました。
Can't read dir of '/usr/local/etc/my.cnf.d' (Errcode: 20 "Not a directory")

対処方法

エラーメッセージで指定されているディレクトリを作成したら起動するようになりました。
cd /usr/local/etc
mkdir my.cnf.d

原因

調べたのですがよく分かりませんでした。

その他

原因調査中にMariaDBをUpgradeするという方法で解決していた方を見かけたので試してみました。
brew upgrade mariadb
残念ながら私の環境では下記のようなメッセージが表示されてしまい、解決することが出来ませんでした。
Error: mariadb 10.4.6 already installed
インストールされているMariaDBとUpgrade先のMariaDBのバージョンが同じだと、この方法では解決できないようです。