tag:crieit.net,2005:https://crieit.net/tags/%E7%92%B0%E5%A2%83%E6%A7%8B%E7%AF%89/feed
「環境構築」の記事 - Crieit
Crieitでタグ「環境構築」に投稿された最近の記事
2022-08-13T18:55:09+09:00
https://crieit.net/tags/%E7%92%B0%E5%A2%83%E6%A7%8B%E7%AF%89/feed
tag:crieit.net,2005:PublicArticle/18278
2022-08-13T18:55:09+09:00
2022-08-13T18:55:09+09:00
https://crieit.net/posts/install-nodejs-using-asdf
【node/yarn】asdfでnodeをインストールし、Yarnもつかえるようにする
<p>こんにちは、しきゆらです。</p>
<p>今回は、<a target="_blank" rel="nofollow noopener" href="https://shikiyura.com/2022/08/install_the_multiple-runtime-versions_management_tool__asdf/">こちらで紹介したasdf</a>を使ってNode.jsをインストールし、個人的によく使っているYarnも使えるように環境を作っていきます。</p>
<p>なお、Node.jsのインストールはすぐ終わったのですがYarnのインストールとか諸々に至るまでに紆余曲折ありました。まずは、インストールして環境構築までの流れをまとめます。</p>
<p>その後に、紆余曲折部分をメモしておきます。<br />
必要なコマンドだけよこせ!という方は、以下の「環境構築の流れ」を参考にしてみてください。</p>
<h2 id="環境構築の流れ"><a href="#%E7%92%B0%E5%A2%83%E6%A7%8B%E7%AF%89%E3%81%AE%E6%B5%81%E3%82%8C">環境構築の流れ</a></h2>
<p>コマンド自体の使い方等はそれぞれのツールのサイト等で確認してください。</p>
<pre><code class="zsh"># node用のプラグインを追加
asdf plugin add nodejs
# nodeをインストール
asdf install nodejs latest
# システム全体で使うバージョンを指定
asdf global nodejs latest
# yarnを使う準備
corepack enable
# asdfの再構築
asdf reshim nodejs
</code></pre>
<p>これにて、環境構築は終了です。</p>
<p>yarnの手順が以前とだいぶ変わりましたが、npmで個別にインストールせずにパッケージマネージャを管理する仕組みが入ったようです。<br />
そのおかげで手順がさっぱりしました。</p>
<p>では、前述の通り環境構築の紆余曲折や各ドキュメントを見ながらの細かい話は以下にまとめていきます。</p>
<h2 id="環境構築の紆余曲折"><a href="#%E7%92%B0%E5%A2%83%E6%A7%8B%E7%AF%89%E3%81%AE%E7%B4%86%E4%BD%99%E6%9B%B2%E6%8A%98">環境構築の紆余曲折</a></h2>
<h3 id="Nodeのインストール"><a href="#Node%E3%81%AE%E3%82%A4%E3%83%B3%E3%82%B9%E3%83%88%E3%83%BC%E3%83%AB">Nodeのインストール</a></h3>
<p>こちらは、asdfの仕組みにのっとって進めるだけなので、<a target="_blank" rel="nofollow noopener" href="https://shikiyura.com/2022/08/install_the_multiple-runtime-versions_management_tool__asdf/">前回の記事</a>と同じ手順を踏むだけです。</p>
<pre><code class="zsh"># node用のプラグインを追加
asdf plugin add nodejs
# nodeをインストール
asdf install nodejs latest
# システム全体で使うバージョンを指定
asdf global nodejs latest
# 確認
node -v
</code></pre>
<h3 id="Yarnのインストール"><a href="#Yarn%E3%81%AE%E3%82%A4%E3%83%B3%E3%82%B9%E3%83%88%E3%83%BC%E3%83%AB">Yarnのインストール</a></h3>
<p>手間取ったのはこちらのほう。<br />
インストールするために、公式サイトを見てみると記述がガラッと変わっていました。<br />
<a target="_blank" rel="nofollow noopener" href="https://yarnpkg.com/getting-started/install">https://yarnpkg.com/getting-started/install</a></p>
<p>Node.js 16.10以上だと以下のコマンドだけでよいとのこと。</p>
<pre><code class="zsh">corepack enable
</code></pre>
<p>corepackとは何ぞや。<br />
と思って調べると、Node.jsのパッケージマネージャを管理するための仕組みのようです。<br />
<a target="_blank" rel="nofollow noopener" href="https://nodejs.org/api/corepack.html">https://nodejs.org/api/corepack.html</a></p>
<p>いい感じにまとめてくれている方がいました。先人に感謝です。<br />
<a target="_blank" rel="nofollow noopener" href="https://zenn.dev/teppeis/articles/2021-05-corepack">https://zenn.dev/teppeis/articles/2021-05-corepack</a></p>
<p>ということで、公式の手順に従ってコマンド実行してみました。</p>
<pre><code class="zsh"># corepackを有効化
corepack enable
# yarnは入った・・・?
yarn
zsh: command not found: yarn
</code></pre>
<p>ということで、実行してもyarnは使えませんでした。</p>
<h3 id="corepackについてもう少し調べてみる"><a href="#corepack%E3%81%AB%E3%81%A4%E3%81%84%E3%81%A6%E3%82%82%E3%81%86%E5%B0%91%E3%81%97%E8%AA%BF%E3%81%B9%E3%81%A6%E3%81%BF%E3%82%8B">corepackについてもう少し調べてみる</a></h3>
<p>なんでじゃ、と思ってこれまた調べてみると、プロジェクトごとに使うパッケージマネージャを指定するような使い方を想定しているようです。</p>
<p>そして、事前に使うパッケージマネージャを指定することもできるようです。<br />
ということで、以下のコマンドで明示的にyarnを使うようにしてみます。</p>
<pre><code class="zsh"># 明示的にyarnを使う
corepack prepare --activate [email protected]
# yarnは入った・・・?
yarn
zsh: command not found: yarn
</code></pre>
<p>同じくコマンドがない、と怒られたのでいろいろ考えてみました。<br />
ここで思い出したのが、rbenvではrehashというコマンドを使っていたこと。<br />
gemや新しいバージョンのRubyをインストールしたときはとりあえずrehashしておけ、<br />
という程度の認識でしたが、このような仕組みがasdfにもあるのでは、と思い調べてみました。</p>
<h3 id="asdf reshim"><a href="#asdf+reshim">asdf reshim</a></h3>
<p>調べてみると、ドンピシャな質問と回答が出てきました。<br />
<a target="_blank" rel="nofollow noopener" href="https://stackoverflow.com/questions/70082424/command-not-found-corepack-when-installing-yarn-on-node-v17-0-1">https://stackoverflow.com/questions/70082424/command-not-found-corepack-when-installing-yarn-on-node-v17-0-1</a></p>
<p>asdf reshim <name>というコマンドでrbenv rehashのようなことができるとのこと。<br />
<a target="_blank" rel="nofollow noopener" href="https://asdf-vm.com/manage/core.html#reshim">https://asdf-vm.com/manage/core.html#reshim</a></p>
<p>上記によると、インストール時に~/.asdf/shimsへコマンドとして使えるようにファイルが自動的に生成されるが、それ以外ではファイルが生成されないのこと。今回の場合は、nodeインストール後に手動でcorepack enableやcorepack prepare --activate [email protected]を実行しているのでasdf的には存在を知らない。そこで、asdfに追加があったことを教えてあげて、ファイルを作ってもらう必要があったようだ。</p>
<pre><code class="zsh"># asdfにファイル生成をしてもらう
asdf reshim nodejs
# 確認
yarn -v
# => 3.2.2
</code></pre>
<p>ようやく使えるようになりました。<br />
ただ、未確認ではありますが、asdf reshimの動きを見るとcorepack prepareは不要な気がします。<br />
ということで、「環境構築の流れ」では省いてます。</p>
<h3 id="おまけ: rbenv rehashについて改めて確認してみる"><a href="#%E3%81%8A%E3%81%BE%E3%81%91%3A+rbenv+rehash%E3%81%AB%E3%81%A4%E3%81%84%E3%81%A6%E6%94%B9%E3%82%81%E3%81%A6%E7%A2%BA%E8%AA%8D%E3%81%97%E3%81%A6%E3%81%BF%E3%82%8B">おまけ: rbenv rehashについて改めて確認してみる</a></h3>
<p>ここで、改めてrbenv rehashを調べてみました。<br />
<a target="_blank" rel="nofollow noopener" href="https://github.com/rbenv/rbenv#rbenv-rehash">https://github.com/rbenv/rbenv#rbenv-rehash</a></p>
<p>御幣を恐れずにざっくり書けば、新しいgemやRubyをインストールした場合は「~/.rbenv/versions/*/bin/」にインストールされるが、PATHが通っているのは「~/.rbenv/shims」なのでそのままでは使うことはできません。<br />
そこで、バージョン切り替えやgemのコマンドなどを追加する場合は新たに「~/.rbenv/shims」へコピーしてあげる必要があるわけです。そのコマンドがrbenv rehashのようです。</p>
<p>・・・とはいえ、いつの間にかrbenv installなどのタイミングで良しなにrbenv rehashが実行されるようになり明示的に実行する必要はなくなったようです。</p>
<p>ということで、asdfも正式版がリリースされる頃にはもしかしたら今回のようなごたごたはなくなるかもしれないなぁ・・・ということを思いながら、諸々調べる機会を与えてくれて感謝しつつ紆余曲折のメモを終わります。</p>
<h2 id="まとめ"><a href="#%E3%81%BE%E3%81%A8%E3%82%81">まとめ</a></h2>
<p>今回は、asdfを使ってNode.jsをインストールし、パッケージマネージャのYarnを使えるように環境構築をしました。<br />
いつの間にかYarnのインストール方法が変わっていたり、asdfの仕組みに躓いたりしましたが、いろいろなことを調べたり知ることができたので満足です。</p>
<p>というわけで、今回はここまで。<br />
おしまい</p>
しきゆら
tag:crieit.net,2005:PublicArticle/16276
2020-12-07T15:53:51+09:00
2020-12-09T17:51:30+09:00
https://crieit.net/posts/Struts-1-3
Struts 1.3 開発環境の構築手順(備忘録)
<h1 id="前書き"><a href="#%E5%89%8D%E6%9B%B8%E3%81%8D">前書き</a></h1>
<p>以前の職場でメモした環境構築を吐き出す - 2020/12/07<br />
Windows7 64bit</p>
<p>導入ソフトは以下4つ<br />
・Eclipse 4.8<br />
・jdk / jre 1.8<br />
・apache-tomcat 1.9<br />
・Struts 1.3</p>
<h1 id="①Eclipseの導入"><a href="#%E2%91%A0Eclipse%E3%81%AE%E5%B0%8E%E5%85%A5">①Eclipseの導入</a></h1>
<p>Pleiades - Eclipse プラグイン日本語化プラグイン<br />
<a target="_blank" rel="nofollow noopener" href="http://mergedoc.osdn.jp/">http://mergedoc.osdn.jp/</a></p>
<p>上記サイトでeclipseをダウンロード<br />
例:Eclipse 4.8 Photon 選択、Windows 64bit Standard Edition で Java のDownload を押下</p>
<p>ダウンロードしたファイルは適当なフォルダで解凍し、適当な位置に配置<br />
例:「 C:\work\pleiades 」</p>
<p>Eclipseの起動は「 pleaides\eclipse\eclipse.exe 」<br />
例:「 C:\work\pleiades\eclipse\eclipse.exe 」</p>
<h1 id="②jdk / jre の導入"><a href="#%E2%91%A1jdk+%2F+jre+%E3%81%AE%E5%B0%8E%E5%85%A5">②jdk / jre の導入</a></h1>
<p>Oracle社 Java SE Development Kit 8 Downloads<br />
<a target="_blank" rel="nofollow noopener" href="https://www.oracle.com/java/technologies/javase/javase-jdk8-downloads.html">https://www.oracle.com/java/technologies/javase/javase-jdk8-downloads.html</a><br />
(現在はオラクルアカウントが必要、無料登録)</p>
<p>上記サイトでjdkをダウンロード<br />
例:「 Java SE Development Kit 8u271 」の下<br />
「 jdk-8u271-windows-x64.exe 」を押下</p>
<p>適当にインストールし、環境変数を設定<br />
例:インストール場所「 C:\Program Files\Java\jdk1.8.0_271 」<br />
「 C:\Program Files\Java\jre1.8.0_271 」<br />
環境変数:「 JAVA_HOME 」<br />
値:「 C:\Program Files\Java\jdk1.8.0_271 」<br />
環境変数:「 Path 」<br />
値:「 %JAVA_HOME%\bin; 」(既にあると思うので末尾に追記)</p>
<h1 id="③apache-tomcatの導入"><a href="#%E2%91%A2apache-tomcat%E3%81%AE%E5%B0%8E%E5%85%A5">③apache-tomcatの導入</a></h1>
<p>Apache Tomcat 9 - Download page<br />
<a target="_blank" rel="nofollow noopener" href="https://tomcat.apache.org/download-90.cgi">https://tomcat.apache.org/download-90.cgi</a></p>
<p>上記サイトでapache-tomcatをダウンロード<br />
例:「 9.0.40 - Binary Distributions - Core 」の下にある「 64-bit Windows zip 」を押下</p>
<p>ダウンロードしたファイルを適当な場所で解凍し、適当な位置に配置<br />
例:「 C:\work\apache-tomcat-9.0.40 」</p>
<p>配置した箇所に合わせて、環境変数を設定<br />
例:ユーザー環境変数にて、変数を「CATALINA_HOME」値を「C:\work\apache-tomcat-9.0.40」<br />
システム環境変数にて、変数「Path」の値の末尾に「%CATALINA_HOME%\bin;」を追加</p>
<p>tomcatの起動は「 apache-tomcat-9.0.40\bin\startup.bat 」<br />
tomcatの停止は「 apache-tomcat-9.0.40\bin\shutdown.bat 」</p>
<p>※「tomcat」はサーブレットコンテナと呼ばれるソフト。<br />
画面側(html/jsp)とプログラム(javaServlet)を仲介する役目(厳密には違うかと思いますが)</p>
<h1 id="④Strutsの導入"><a href="#%E2%91%A3Struts%E3%81%AE%E5%B0%8E%E5%85%A5">④Strutsの導入</a></h1>
<p>Download a Release - Struts 1.3.10<br />
<a target="_blank" rel="nofollow noopener" href="http://struts.apache.org/download.cgi#struts1310">http://struts.apache.org/download.cgi#struts1310</a></p>
<p>上記サイトでStruts1.3をダウンロード<br />
例:サイト中段「 Prior releases」から「Struts 1.3.10 」の下にある、<br />
「 struts-1.3.10-all.zip 」を押下</p>
<p>ダウンロードしたファイルは適当な場所で解凍し、<br />
「 struts-1.3.10-all\struts-1.3.10\apps 」配下の「 struts-examples-1.3.10.war 」をコピーし、<br />
「③」で配置したディレクトリの「 apache-tomcat-9.0.40\webapps\ 」配下に配置<br />
例:配置後「 C:\work\apache-tomcat-9.0.40\webapps\struts-examples-1.3.10.war 」</p>
<p>※「.war」ファイルは、zipのような圧縮ファイルの一つ。<br />
上記ディレクトリに配置し、tomcatを起動させると自動的に解凍しファイルが展開される</p>
<h1 id="⑤Eclipseの設定 (JDKの設定)"><a href="#%E2%91%A4Eclipse%E3%81%AE%E8%A8%AD%E5%AE%9A+%28JDK%E3%81%AE%E8%A8%AD%E5%AE%9A%29">⑤Eclipseの設定 (JDKの設定)</a></h1>
<p>Eclipseを起動<br />
「ウインドウ > 設定」を押下<br />
「Java > インストール済みのJRE」より「追加」ボタンを押下<br />
「標準VM」を選択し「次へ」を押下<br />
「ディレクトリー」ボタンを押下し、JDKのディレクトリを選択し、「完了」ボタンを押下<br />
例:「 C:\Program Files\Java\jdk1.8.0_271 」</p>
<h1 id="⑥Serversプロジェクトの配置"><a href="#%E2%91%A5Servers%E3%83%97%E3%83%AD%E3%82%B8%E3%82%A7%E3%82%AF%E3%83%88%E3%81%AE%E9%85%8D%E7%BD%AE">⑥Serversプロジェクトの配置</a></h1>
<p>「ファイル > その他 > サーバー > サーバー」を押下<br />
Apache Tomcatのversionを選択し、「完了」ボタンを押下<br />
例:「Tomcat v9.0 サーバー」</p>
<h1 id="⑦Strutsプロジェクトの作成"><a href="#%E2%91%A6Struts%E3%83%97%E3%83%AD%E3%82%B8%E3%82%A7%E3%82%AF%E3%83%88%E3%81%AE%E4%BD%9C%E6%88%90">⑦Strutsプロジェクトの作成</a></h1>
<p>「ファイル > その他 > Web > 動的Webプロジェクト」を押下<br />
プロジェクト名を適当に入力し、<br />
ターゲットランタイムでApache Tomcatのversionを選択し、「次へ」ボタンを押下<br />
例:「 Apache Tomcat v9.0 」<br />
何も変更せず「次へ」ボタンを押下<br />
「 web.xmlデプロイメント記述子の生成 」にチェックを入れ、「完了」ボタンを押下</p>
<h1 id="⑧ServletAPIの設定"><a href="#%E2%91%A7ServletAPI%E3%81%AE%E8%A8%AD%E5%AE%9A">⑧ServletAPIの設定</a></h1>
<p>「⑦」で作成したプロジェクトを右クリックし、プロパティを押下<br />
「Javaのビルド・パス」から「ライブラリータブ」にて「外部JARの追加」ボタンを押下<br />
「②」で配置したディレクトリの「 apache-tomcat-9.0.40\lib\servlet-api.jar 」を選択<br />
その後「適用して閉じる」ボタンを押下</p>
<p>「⑦」で作成したプロジェクトを右クリックし、「新規 - その他 - Web - サーブレット」を押下<br />
クラス名を適当に入力し、「完了」ボタンを押下</p>
<p>~~~~~ここまでで一通り、Struts開発環境構築は完了。以後は好きに作る</p>
shima