【Next.js】ESLint must be installedの対処法
問題
npx create-next-app
をした時にESLint must be installed: yarn add --dev eslint
とエラーが出た。
対処法
eslintのバージョンを7にダウングレードする必要があるので、
- npmを使用している場合
npm install eslint@7
を実行 - yarnをを使用している場合
yarn upgrade eslint@7.32.0
を実行
考察
npx create-next-app
を実行した際に、eslint@latest
がインストールされる。
最近(2021/10/17)eslintのバージョンが8にアップグレードされたのに対し、next.jsがまだ対応できていないようである。
【Apex Legends】エラーで起動しないときの対処方法
Apexを入れようとしたら起動するときに「ゲームの設定に問題があります。ゲームを再インストールしてください。」とエラーがでて起動しないため、対処方法を探したら無事ゲームが起動できたためやり方をメモしておく。 ちなみにググるとSteam版のApexならエラーがでないらしいが、Originで起動したかったためそちらは試していない。
やり方
Apexがインストールされているフォルダーを開く。
(デスクトップのApexのアイコンを右クリックして、「ファイルの場所を開く」をクリックすると開く)
「__Installer」「directx」「redist」の順にフォルダを開く。
「DXSETUP.exe」を起動して案内通りにすすめる。
これでApexが起動できるようになります!
余談
多分だけどApexをインストールする際にDirectXのインストールがうまくいってないみたい。
手動でインストールすることで解決。
プラグインをpluginsフォルダーに自動コピー
MinecraftのSpigotプラグインを開発していると、どうしてもコードを修正したあとのリロードまで時間がかかりますよね。私は修正からその確認作業までが5秒ほどに縮まりました。
プラグインの開発効率を上げていきましょう!
mavenとは
mavenがわかる方は飛ばしてください。
Maven は Project Object Model (POM) という考え方に基づき、プロジェクトのビルド、テスト、ドキュメンテーション、成果物の配備など、プロジェクトのライフサイクル全体を管理します。プロジェクトのビルドツールである Ant とは異なり、Maven はプロジェクト管理ツールとして、プロジェクトに関する色々な情報を POM に集約し、POM の情報に基づきプロジェクト全体を管理します。
難しく考えすぎず、Javaでの開発の手助けを行うものだと思って構いません。pom.ymlに仕様を書くことで必要なライブラリなどを導入してくれます。
今回はmavenについては詳しく説明しません。
antrunプラグインを使ってpackage実行時にファイルをコピーします
pom.xml
次のように記入してください。
<build> <plugins> <plugin> <artifactId>maven-antrun-plugin</artifactId> <executions> <execution> <phase>package</phase> <goals> <goal>run</goal> </goals> <configuration> <tasks> <copy file="<出力されるjarファイルのパス>" tofile="<サーバーのpluginフォルダ内のファイルのパス>" /> </tasks> </configuration> </execution> </executions> </plugin> </plugins> </build>
<出力されるjarファイルのパス>の例としては、D:/Spigot Debug/workspace/debug/target/debug-0.0.1-SNAPSHOT.jar
などです。
<出力されるjarファイルのパス>の例としては、D:/Servers/Spigot Debug/plugins/debug-0.0.1-SNAPSHOT.jar
などです。ディレクトリのパスではなく、ファイルのパスを指定してください。
【Spigot】スマートなgetPlugin
コード
とりあえずコードだけ最初に書いておきます
(importは省略)
public class MyPlugin extends JavaPlugin { public static Plugin getPlugin() { return JavaPlugin.getPlugin(MyPlugin.class); } }
解説
googleでspigot getplugin
とかぐぐると下記のようなコードが大量にでてくると思います
public class MyPlugin extends JavaPlugin { private static Plugin plugin = null; public static Plugin getPlugin() { return plugin; } @Override public void onEnable() { plugin = this; } }
この方法でPluginのインスタンスは取得できますが、あまり望ましくないので使わないようにしましょう