Android Studio導入時の日本語化でハマった(つまづいた)
最近ようやく仕事が落ち着いたのと唐突にAndroidアプリの練習を始め出しました。
仕事でコードを書くことがほぼなくなり正直メンタルがじわじわとやられ出していたけれど調べ物していると元気が出てきました。やはり未知に触れないと楽しくないですからね。
Androidアプリの一つ練習しないSEとはなんぞやとも思います。
更新もひさしぶりすぎて非常にまずいですしJavaを忘れかけている気がする。本を発掘してやり直したい。
今回のつまずきはPleiadesを使用し日本語化を行おうとしたことで発生しました。
Android Studioは下記の通りIntelliJ IDEAをベースに作製された統合開発環境(IDE)です。
IntelliJ IDEAに関しては以前に導入記事を書いており、当時の時点で”Pleiadesの日本語化を使用するのは不具合が発生する可能性があるため非推奨である、公式が作製した日本語化プラグインを使用するように”とIntelliJ IDEA公式が推奨していました。
つまりIntelliJ IDEAをベースに作製されたAndroid Studioはその不具合を引き継いでおり今回のつまずきにつながったようです。知っててよかった。
Pleiadesによる日本語化を実行した直後から起動しなくなったため分かりやすかったですね。
「could not find main class com/intellij/idea/main」のエラーメッセージだけ表示され起動そのものがされない状態。
studio64.exe.vmoptionsの末尾2行をコメントアウトして日本語化を無効化し起動に成功。
#-Xverify:none
#-javaagent:C:\Users\[任意の名前]\AppData\Roaming\Google\AndroidStudio2021.3\jp.sourceforge.mergedoc.pleiades\pleiades.jar
このフォルダそのものを削除する方法もあるようですが今回はコメントアウトのみで対応しました。
起動後は下記の記事を参照し日本語化に成功。
記事の内容とは少し表示が変わっていましたがおそらくバージョンは年と月だろうと考え「21.341」をダウンロード。
エラーが発生することもなく日本語化されていることを確認できた。
もう一度XAMPPをインストール
もう一回どころじゃない回数インストールしなおしてるのですが、以前の記事が古いので書き直しました。
環境 Windows10 home 64bit
- XAMPPとは
X … Windows、Mac、Linuxなどで使えるクロスプラットフォーム
A … Apache ‐ webサーバ
M … MariaDB(MySQL) ‐ データベースサーバ
P … PHP ‐ プログラミング言語
P … Perl ‐ プログラミング言語
これらを一つのソフトにまとめたものであり、
XAMPPのコントロールパネルで起動・終了などの管理を行うことができるソフトです。
XAMPPを通さない場合はそれぞれのソフトを毎回起動・終了する必要があります。
おもにwebサイトの作成をする際に、サービスをボタン一つで起動することができるた
めとても便利。
私はしょっちゅうエラーを起こして入れなおしてました。
余計なことしなければ便利に使えるはずです。
- 導入方法
ダウンロードはXAMPPの公式サイトから
現在DLできるソフトは64bitのみなので32bitユーザーは古いバージョンが必要かもしれません。
DLできるファイルはexeファイルになります。
exeファイルを起動すると警告が出てきますが、プログラムファイル下に置くとうまく動作しないですのようなことが書かれています。
インストール方法は下記のサイトが参考になります。
XAMPPのexeファイルを起動の確認ができれば完了です。
インストールフォルダは指定しなければC:\xamppにあります。
オレンジアイコンの "xampp_control.exe" から起動ができます。
- 環境によってはエラーが発生する
私の環境で発生したエラーがありました。
XAMPPを終了する際に
" Error: Cannot create file “C:\xampp\xampp-control.ini”.
アクセスが拒否されました。"
" Exception EAccessViolation in module xampp-control.exe at 0025B2AE.(省略 "
この警告が発生し終了することができなくなりました。
原因はアクセス制御でした。管理者として実行すれば問題ありません。
解決方法は下記のサイトを参考にしました。
こういった英語の警告が出たときによく利用しているのは"DeepL 翻訳ツール"です。
DeepL Translate: The world's most accurate translator
グーグル翻訳でもいいのですがビジネス文書はこちらのほうが読みやすいように思います。
- MySQLの設定について
XAMPPで使用するMySQL(MariaDB)を使用する際にはパスワードを設定します。
初期の状態ではパスワードが設定されていないため、だれでもログインできるようになっています。
これでは悪意のあるユーザーから攻撃された場合すぐにDBを破壊されてしまいます。
パスワードの設定方法は2種類あります。
webブラウザからphpMyAddminで設定。
参考
コマンドプロンプトから設定。
参考
コマンドプロンプトのほうがシンプルに操作できますが、操作に慣れていないと難しいので最初はブラウザ経由が楽だと思います。
これらの設定が完了すればXAMPPの環境設定は完了となります。
paizaでSTEINS;GATE コラボが始まっています
昔の雰囲気をそのままにゲームにしているコラボになります。
会話パート→問題を解く→会話パート
といった形で進んでいきます。
問題を正解した場合、不正解だった場合で2パターンのシナリオが用意されています。
会話パートは本当にキャラクターの掛け合いだけで、特にプログラミングの解説などをしません。
なので会話パートが終わる直前に突然ではテストを始める!から始まります。
問題パートになるとキャラクター達はいなくなります。少し寂しいですね。
内容に関してはいつものpaizaの問題でした。
初心者向けの優しい解説から始めるのかなー?と思っていましたが、初歩はできているのが前提でそこからさらに難しいものに挑戦しよう!ぐらいの難易度になっています。
スキャナーで受け取る仕様が少し慣れませんでしたが第一問は特に問題ありませんでした。
これから二問めですが結構難しめで大変そうです。完走できなかったら凹むかもしれません。
IntelliJ IDEAの日本語化プラグインが完成したらしい
以前にも導入方法の日記を書いたIntelliJ IDEAなのですが、完全日本語化プラグインが完成したようです。
これは自分で書いたもの。
窓の社の紹介記事
公式の日本語言語パックの記事
日本語化プラグイン(日本語言語パック)の完成を記念して2021年8月31日まで、新規年間サブスクリプションの金額が30%オフになるようです。
使いやすいので欲しいのですがまだそこまで使いこなせてないので今回は見送りですね。
アップデート、または導入方法は下記の方法になります。
アップデートをしたのですが、もともと日本語化は大体はされていたのであんまり差は分かりませんでした。
残念ながら今日のヒントは英語のままだったので翻訳は必要です。
公式日本語化プラグインが完成したのでPleiadesを導入する必要がなくなったのは大きいと思います。
公式ならアンインストールも簡単で問い合わせもできますから。
eclipseショートカット
基本的な使い方はどの範囲だろうと考えた結果、ショートカット集にのるくらいのものはよく使うだろうと判断しました。
なるべく毎日さわるようにはしているものの、同じ項目ばかり使っていてあまり進歩がないので少しずつでも覚えていきたい。
sysoでSystem.out.println();を出してくれるeclipseの便利さです。
なるべくマウスを使わずに操作したいですね。
MySQLを使う
今は手動でMySQLを起動しています。起動しっぱなしでポート番号の競合が発生しひどい目をみました。
サービスから起動するか、またはコンソールから起動するか。
いまのところサービスから起動しています。
ただコマンドプロンプトで直接起動したほうが早いとは思います。
起動する場合は
"net start mysql80"で起動します
"net stop mysql80"で停止します
ここで注意するのは末尾に;を付けないです。つけると無効だと言われます。
記事ではMySQL56ですが、バージョンによってはMySQL80になります。バージョン違いなだけなので気にせずに起動します。
起動したら必ず停止もセットで行います。ポートがあかないなんてことも起きるので。
いきなり脱線しますがコマンドプロンプトから起動しようとしたところできませんでした。
どうやらPASH設定が吹っ飛んでいたようなので再設定しました。
この状態でもMySQL 8.0 Command Line Clientは動くんですよね。
参考サイトは前にも紹介したこのサイトです。
設定しなおしてもう一度 つなげようとしたらこんどは「システム エラー 5 アクセスが拒否されました」の表示
対処法はシンプルで管理者権限で起動です。
今回は MySQL 8.0 Command Line Client を使用します。
まずは現在ユーザーがrootだけなので、新たにユーザーを作成します。
そのままでも使えるのですが練習がてらやります。
参考にしたのはこの記事になります。
権限の付与をすることでrootユーザー以外もDBを操作することができるようになります。誤ってデータを吹っ飛ばしたりしないようにrootユーザー以外を扱うほうがいいようです。
権限の付与に関してはこちらの記事を参考にしています。
grant は承認する
USAGE は使用法
*.* は*が正規表現の0回以上の繰り返しなのでなんでもですね。
もしログインしているユーザーを変更したい場合は一度ログアウトする必要があるようです。できないかと探し回っているのですが探し方が悪いのか見つかりません。
MySQL 8.0 Command Line Clientはrootユーザーしか利用できないようなので、新たに作成したユーザーはコマンドプロンプトを使うかWorkbenchなどのツールを使う必要があるようです。
ツールを使うことが多かったので結構知識が抜けていて怖いです。
7/18 追記
JavaとMySQLを接続するためにConnector/Jをダウンロードした
古いバージョンのmysql-connector-javaは持っているのですがバージョンが新しいものを手に入れたかったのでDLしようとしました。
MySQLのインストーラーを起動したらaddで追加できるだろうと思ったんですが追加方法がわからない。前回あれだけこれを入れてねと主張してきたのに役に立ちませんでした。英語がわからないとこういったとき困ります。
次にオラクルのDLサイトへ向かうもののSelect Operating Systemをwindwsにするとmsiファイルしか出てこない。
zip版が欲しかったのであちこち探し回ったのですが、
どうやらPlatform Independentを選べばよかったようです。
プラットフォームに依存しないという意味になるので、これを使用すれば問題ない模様。
まだ接続は試していませんがもう遅いのでここまで。