環境構築 (1.16.5)

概要

MODを開発するための環境を整えます。Windows 10で確認しているので、MacやLinuxでは異なる部分があります。複数のMODを開発する時は、Forgeの手順3から繰り返してください。

動画

1.16.4の情報ですが、YouTubeニコニコ動画で公開しています。手順はほぼ同じです。

動作確認

2021年3月21日

  • Windows 10 Home 20H2 (64 bit)
  • IntelliJ IDEA 2020.3.3
  • AdoptOpenJDK (HotSpot) 1.8.0_282
  • Minecraft 1.16.5
  • Forge 36.1.0

手順

前提

Minecraft: Java Editionを公式サイトで購入してください。

MODを開発し配布する際は、MinecraftのEULAに従う必要があります。Minecraftのコードの公開禁止や商用利用に関する制限などが含まれているので、必ず自分で確認してください。

MODの開発は自己責任で行ってください。この講座により生じたいかなる損害についても、TNT Moddersは一切責任を負いません。

IntelliJ IDEA

  1. ダウンロードページから「コミュニティ」をダウンロードしてください。
  2. ダウンロードしたインストーラを実行し、デフォルト設定のまま画面に従ってインストールしてください。
  3. IntelliJ IDEAを起動し、タイトル画面で「New Project」を選択してください。
  4. 「Project SDK」から「Download JDK」を選択してください。
  5. 「Version」に「1.8」、「Vendor」に「Eclipse Temurin (AdoptOpenJDK HotSpot)」を指定し、「Download」を押してください。
  6. 「Project SDK」に「1.8」が選択されていることを確認し、「Cancel」を押してください。

Forge

  1. ダウンロードページから1.16.5を選択し、「Download Recommended」の「Mdk」を押してください。
  2. 「AdFoc.us」という広告ページに移動し、5秒待つと右上に「SKIP」というボタンが出るので、これをクリックしてダウンロードしてください。下の方の「ダウンロード」などのボタンは広告です。
  3. ダウンロードしたzipファイルを解凍してください。日本語の入っていない場所がよいでしょう。今回は例としてC:/Mods/TitaniumModを使用します。今後、build.gradleのパスがC:/Mods/TitaniumMod/build.gradleであるとします。
  4. IntelliJ IDEAを起動して「Open」からC:/Mods/TitaniumModを選択します。自動で読み込みが始まるので、右下の進捗表示が完了するまで待ってください。
  5. ファイアウォールの警告が出た場合は、プライベートネットワークでのアクセスを許可してください。
  6. 10分以上待つと読み込みが終わります。読み込みに失敗したら「Build」のTool Windowにエラーが表示されます。
  7. 画面右側のTool Window Barにある「Gradle」を選択し、GradleのTool Windowを開いてください。1
  8. TitaniumMod > Tasks > forgegradle runsと階層を下りて「genIntellijRuns」をダブルクリックすると、実行構成が自動で作成されます。「BUILD SUCCESSFUL」の表示を確認してください。
  9. Gradle Tool Window左上の同期ボタン(Reload All Gradle Projects)を押してください。
  10. 画面右上の「TitaniumMod [genIntellijRuns]」などと表示されている実行構成選択ボタンを押して「runClient」を選択してください。
  11. 実行ボタンを押して、Minecraftが起動することを確認してください。

IntelliJ IDEAのスクリーンショット

Example Modの削除

  1. TitaniumMod/src/main/java/にあるcom.example.examplemodを削除してください。中にはコードの例が入っています。
  2. IntelliJ IDEAのProject Tool Windowで手順1を実行した場合、com.exampleが残るので削除してください。
  3. TitaniumMod/src/main/javaを右クリックし、New > Packageからcom.tntmodders.titaniummodパッケージを作成してください。実際にMODを作るときは自分が保有するドメインを使います。ない場合は自分の名前など、他のプログラムと被らないものを使ってください。2com.tntmoddersをあなたのMODのパッケージとして使わないでください。
  4. com.tntmodders.titaniummodを右クリックし、New > Java ClassからTitaniumModを作成してください。
  5. TitaniumMod/src/main/resources/META-INF/mods.tomlを開き、modId="examplemod"modId="titaniummod"に変更してください。
  6. TitaniumMod/にあるchangelog.txtCREDITS.txtLICENSE.txtREADME.txtを削除してください。Forgeの説明文書です。

画像編集ソフト

16×16ピクセルの画像をピクセル単位で編集でき、RGBA各チャンネル8 bitの色情報を透過PNGファイルとして保存できるソフトを用意してください。リソースパックの作り方などで調べると適したソフトが紹介されていると思います。

凪浜は「paint.net」の無料版を使っています。TomKateはPhotoshop Proを使っていますが、もっと軽いピクセル絵用のソフトのほうがいいと思います。

再インストールの手順

エラーが出た際などに正しく再インストールするための手順を説明します。

Forge

  1. C:/Mods/TitaniumModを削除してください。
  2. Forgeの手順3からもう一度行ってください。

IntelliJ IDEA

  1. スタートメニューなどからIntelliJ IDEAのアンインストールを選択してください。
  2. 「Please confirm if you would like to delete the caches and settings:」の枠内にある2つのチェックボックスにチェックを入れてください。
  3. %APPDATA%/JetBrains/%LOCALAPPDATA%/JetBrains/に何か残っていたら削除してください。
  4. 削除が終わったら通常のインストールと同じなので、IntelliJ IDEAの手順2からもう一度行ってください。

JDK

デフォルトでは%USERPROFILE%/.jdks/にインストールされます。この記事の方法では環境変数の設定などは行わないので、このディレクトリを削除するだけです。

リンク

IntelliJ IDEAの日本語化

公式のプラグインで日本語化できます。詳しくはこちらの解説(外部サイト)をご覧ください。ただし、この開発講座ではIntelliJ IDEAの操作や表示の説明を英語版に準拠して行います。


次:アイテムの追加

  1. Tool Window Barが表示されていない場合、画面左下隅の四角いアイコンをクリックすると表示されます。 
  2. オファレンMODはtntmodders.comを取得する前に開発を始めたので、nahama.ofalenmodをパッケージ名にしています。 

34件のコメント

  1. 他のmodをrun/modsに入れると

    (mod名) encountered an error during the load_registries event phase java.lang.NoSuchFieldError: field_78026_f

    のようなエラーが出ます

    どうすれば解決できるか教えていただけると嬉しいです

    • 赤砂蛇 凪浜

      正確なことは分かりませんが、通常環境での導入用に配布されているjarファイルが難読化済みなのに対し、開発環境での実行時はコードの難読化が解除されているためにエラーが出ているのだと思います。

      該当するMODの配布ページやGitHubリポジトリなどでMOD開発者向けの案内がないか探してみてください。また、そのMODがCapabilityTagなどのシステムに対応していれば、コードの依存関係を構築することなく連携要素を作れます。

  2. すいません、一つ前に質問させていただいたものです。
    IntelliJ IDEAを入れ直し、もう一回一番最初のビルドをしたところ

    【折り畳み:ログ】

    Configure project :
    Java: 11.0.14.1 JVM: 11.0.14.1+1-b1751.46(JetBrains s.r.o.) Arch: amd64
    WARNING: This project is configured to use the official obfuscation mappings provided by Mojang. These mapping fall under their associated license, you should be fully aware of this license. For the latest license text, refer below, or the reference copy here: https://github.com/MinecraftForge/MCPConfig/blob/master/Mojang.md, You can hide this warning by running the hideOfficialWarningUntilChanged task
    WARNING: (c) 2020 Microsoft Corporation. These mappings are provided "as-is" and you bear the risk of using them. You may copy and use the mappings for development purposes, but you may not redistribute the mappings complete and unmodified. Microsoft makes no warranties, express or implied, with respect to the mappings provided here. Use and modification of this document or the source code (in any form) of Minecraft: Java Edition is governed by the Minecraft End User License Agreement available at https://account.mojang.com/documents/minecraft_eula.
    java.lang.IllegalStateException: Could not find tools.jar. Please check that C:\Program Files\Java\jre1.8.0_301 contains a valid JDK installation.
    at org.gradle.api.internal.tasks.compile.JdkTools.(JdkTools.java:77)
    at org.gradle.api.internal.tasks.compile.JavaHomeBasedJavaCompilerFactory.createJdkTools(JavaHomeBasedJavaCompilerFactory.java:48)
    at java.util.concurrent.ConcurrentHashMap.computeIfAbsent(Unknown Source)
    at org.gradle.api.internal.tasks.compile.JavaHomeBasedJavaCompilerFactory.create(JavaHomeBasedJavaCompilerFactory.java:43)
    at org.gradle.api.internal.tasks.compile.JavaHomeBasedJavaCompilerFactory.create(JavaHomeBasedJavaCompilerFactory.java:29)
    at org.gradle.api.internal.tasks.compile.JdkJavaCompiler.createCompileTask(JdkJavaCompiler.java:63)
    at org.gradle.api.internal.tasks.compile.JdkJavaCompiler.execute(JdkJavaCompiler.java:53)
    at org.gradle.api.internal.tasks.compile.JdkJavaCompiler.execute(JdkJavaCompiler.java:39)
    at org.gradle.api.internal.tasks.compile.daemon.AbstractDaemonCompiler$CompilerWorkAction.execute(AbstractDaemonCompiler.java:135)
    at org.gradle.workers.internal.DefaultWorkerServer.execute(DefaultWorkerServer.java:63)
    at org.gradle.workers.internal.AbstractClassLoaderWorker$1.create(AbstractClassLoaderWorker.java:49)
    at org.gradle.workers.internal.AbstractClassLoaderWorker$1.create(AbstractClassLoaderWorker.java:43)
    at org.gradle.internal.classloader.ClassLoaderUtils.executeInClassloader(ClassLoaderUtils.java:97)
    at org.gradle.workers.internal.AbstractClassLoaderWorker.executeInClassLoader(AbstractClassLoaderWorker.java:43)
    at org.gradle.workers.internal.FlatClassLoaderWorker.run(FlatClassLoaderWorker.java:32)
    at org.gradle.workers.internal.FlatClassLoaderWorker.run(FlatClassLoaderWorker.java:22)
    at org.gradle.workers.internal.WorkerDaemonServer.run(WorkerDaemonServer.java:85)
    at org.gradle.workers.internal.WorkerDaemonServer.run(WorkerDaemonServer.java:55)
    at org.gradle.process.internal.worker.request.WorkerAction$1.call(WorkerAction.java:138)
    at org.gradle.process.internal.worker.child.WorkerLogEventListener.withWorkerLoggingProtocol(WorkerLogEventListener.java:41)
    at org.gradle.process.internal.worker.request.WorkerAction.run(WorkerAction.java:135)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
    at java.lang.reflect.Method.invoke(Unknown Source)
    at org.gradle.internal.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:36)
    at org.gradle.internal.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:24)
    at org.gradle.internal.remote.internal.hub.MessageHubBackedObjectConnection$DispatchWrapper.dispatch(MessageHubBackedObjectConnection.java:182)
    at org.gradle.internal.remote.internal.hub.MessageHubBackedObjectConnection$DispatchWrapper.dispatch(MessageHubBackedObjectConnection.java:164)
    at org.gradle.internal.remote.internal.hub.MessageHub$Handler.run(MessageHub.java:414)
    at org.gradle.internal.concurrent.ExecutorPolicy$CatchAndRecordFailures.onExecute(ExecutorPolicy.java:64)
    at org.gradle.internal.concurrent.ManagedExecutorImpl$1.run(ManagedExecutorImpl.java:48)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
    at org.gradle.internal.concurrent.ThreadFactoryImpl$ManagedThreadRunnable.run(ThreadFactoryImpl.java:56)
    at java.lang.Thread.run(Unknown Source)
    java.lang.IllegalStateException: Could not find tools.jar. Please check that C:\Program Files\Java\jre1.8.0_301 contains a valid JDK installation.
    at org.gradle.api.internal.tasks.compile.JdkTools.(JdkTools.java:77)
    at org.gradle.api.internal.tasks.compile.JavaHomeBasedJavaCompilerFactory.createJdkTools(JavaHomeBasedJavaCompilerFactory.java:48)
    at java.util.concurrent.ConcurrentHashMap.computeIfAbsent(Unknown Source)
    at org.gradle.api.internal.tasks.compile.JavaHomeBasedJavaCompilerFactory.create(JavaHomeBasedJavaCompilerFactory.java:43)
    at org.gradle.api.internal.tasks.compile.JavaHomeBasedJavaCompilerFactory.create(JavaHomeBasedJavaCompilerFactory.java:29)
    at org.gradle.api.internal.tasks.compile.JdkJavaCompiler.createCompileTask(JdkJavaCompiler.java:63)
    at org.gradle.api.internal.tasks.compile.JdkJavaCompiler.execute(JdkJavaCompiler.java:53)
    at org.gradle.api.internal.tasks.compile.JdkJavaCompiler.execute(JdkJavaCompiler.java:39)
    at org.gradle.api.internal.tasks.compile.daemon.AbstractDaemonCompiler$CompilerWorkAction.execute(AbstractDaemonCompiler.java:135)
    at org.gradle.workers.internal.DefaultWorkerServer.execute(DefaultWorkerServer.java:63)
    at org.gradle.workers.internal.AbstractClassLoaderWorker$1.create(AbstractClassLoaderWorker.java:49)
    at org.gradle.workers.internal.AbstractClassLoaderWorker$1.create(AbstractClassLoaderWorker.java:43)
    at org.gradle.internal.classloader.ClassLoaderUtils.executeInClassloader(ClassLoaderUtils.java:97)
    at org.gradle.workers.internal.AbstractClassLoaderWorker.executeInClassLoader(AbstractClassLoaderWorker.java:43)
    at org.gradle.workers.internal.FlatClassLoaderWorker.run(FlatClassLoaderWorker.java:32)
    at org.gradle.workers.internal.FlatClassLoaderWorker.run(FlatClassLoaderWorker.java:22)
    at org.gradle.workers.internal.WorkerDaemonServer.run(WorkerDaemonServer.java:85)
    at org.gradle.workers.internal.WorkerDaemonServer.run(WorkerDaemonServer.java:55)
    at org.gradle.process.internal.worker.request.WorkerAction$1.call(WorkerAction.java:138)
    at org.gradle.process.internal.worker.child.WorkerLogEventListener.withWorkerLoggingProtocol(WorkerLogEventListener.java:41)
    at org.gradle.process.internal.worker.request.WorkerAction.run(WorkerAction.java:135)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
    at java.lang.reflect.Method.invoke(Unknown Source)
    at org.gradle.internal.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:36)
    at org.gradle.internal.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:24)
    at org.gradle.internal.remote.internal.hub.MessageHubBackedObjectConnection$DispatchWrapper.dispatch(MessageHubBackedObjectConnection.java:182)
    at org.gradle.internal.remote.internal.hub.MessageHubBackedObjectConnection$DispatchWrapper.dispatch(MessageHubBackedObjectConnection.java:164)
    at org.gradle.internal.remote.internal.hub.MessageHub$Handler.run(MessageHub.java:414)
    at org.gradle.internal.concurrent.ExecutorPolicy$CatchAndRecordFailures.onExecute(ExecutorPolicy.java:64)
    at org.gradle.internal.concurrent.ManagedExecutorImpl$1.run(ManagedExecutorImpl.java:48)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
    at org.gradle.internal.concurrent.ThreadFactoryImpl$ManagedThreadRunnable.run(ThreadFactoryImpl.java:56)
    at java.lang.Thread.run(Unknown Source)

    FAILURE: Build failed with an exception.

    What went wrong:
    Could not resolve all files for configuration ':runtimeClasspathCopy'.

    Could not find net.minecraftforge:forge:1.16.5-36.2.20_mapped_official_1.16.5.
    Searched in the following locations:

    file:/C:/Users/mimi8/.gradle/caches/forge_gradle/bundeled_repo/net/minecraftforge/forge/1.16.5-36.2.20_mapped_official_1.16.5/forge-1.16.5-36.2.20_mapped_official_1.16.5.pom
    file:/C:/Users/mimi8/.gradle/caches/forge_gradle/bundeled_repo/net/minecraftforge/forge/1.16.5-36.2.20_mapped_official_1.16.5/forge-1.16.5-36.2.20_mapped_official_1.16.5.jar
    Required by:
    project :

    Try:
    Run with --info or --debug option to get more log output. Run with --scan to get full insights.
    Exception is:
    org.gradle.api.internal.artifacts.ivyservice.DefaultLenientConfiguration$ArtifactResolveException: Could not resolve all files for configuration ':runtimeClasspathCopy'.
    at org.gradle.api.internal.artifacts.configurations.DefaultConfiguration.rethrowFailure(DefaultConfiguration.java:1418)
    at org.gradle.api.internal.artifacts.configurations.DefaultConfiguration.access$3600(DefaultConfiguration.java:151)
    at org.gradle.api.internal.artifacts.configurations.DefaultConfiguration$DefaultResolutionHost.rethrowFailure(DefaultConfiguration.java:2030)
    at org.gradle.api.internal.artifacts.configurations.DefaultConfiguration$ConfigurationFileCollection.visitContents(DefaultConfiguration.java:1390)
    at org.gradle.api.internal.artifacts.configurations.DefaultConfiguration.visitContents(DefaultConfiguration.java:497)
    at org.gradle.api.internal.file.AbstractFileCollection.getFiles(AbstractFileCollection.java:130)
    at org.gradle.api.internal.artifacts.configurations.DefaultConfiguration_Decorated.getFiles(Unknown Source)
    at org.gradle.api.internal.artifacts.configurations.DefaultConfiguration.resolve(DefaultConfiguration.java:487)
    at net.minecraftforge.gradle.common.util.runs.RunConfigGenerator.getResolvedClasspath(RunConfigGenerator.java:233)
    at net.minecraftforge.gradle.common.util.runs.RunConfigGenerator.createRuntimeClassPathList(RunConfigGenerator.java:241)
    at net.minecraftforge.gradle.common.util.runs.RunConfigGenerator.configureTokensLazy(RunConfigGenerator.java:199)
    at net.minecraftforge.gradle.common.util.runs.RunConfigGenerator.createRunTask(RunConfigGenerator.java:256)
    at net.minecraftforge.gradle.common.util.runs.RunConfigGenerator.createRunTask(RunConfigGenerator.java:229)
    at net.minecraftforge.gradle.common.util.Utils.lambda$null$9(Utils.java:400)
    at net.minecraftforge.gradle.common.util.Utils.lambda$createRunConfigTasks$10(Utils.java:400)
    at org.gradle.configuration.internal.DefaultUserCodeApplicationContext$CurrentApplication$1.execute(DefaultUserCodeApplicationContext.java:112)
    at org.gradle.configuration.internal.DefaultListenerBuildOperationDecorator$BuildOperationEmittingAction$1.run(DefaultListenerBuildOperationDecorator.java:152)
    at org.gradle.internal.operations.DefaultBuildOperationRunner$1.execute(DefaultBuildOperationRunner.java:29)
    at org.gradle.internal.operations.DefaultBuildOperationRunner$1.execute(DefaultBuildOperationRunner.java:26)
    at org.gradle.internal.operations.DefaultBuildOperationRunner$3.execute(DefaultBuildOperationRunner.java:75)
    at org.gradle.internal.operations.DefaultBuildOperationRunner$3.execute(DefaultBuildOperationRunner.java:68)
    at org.gradle.internal.operations.DefaultBuildOperationRunner.execute(DefaultBuildOperationRunner.java:153)
    at org.gradle.internal.operations.DefaultBuildOperationRunner.execute(DefaultBuildOperationRunner.java:68)
    at org.gradle.internal.operations.DefaultBuildOperationRunner.run(DefaultBuildOperationRunner.java:56)
    at org.gradle.internal.operations.DefaultBuildOperationExecutor.lambda$run$1(DefaultBuildOperationExecutor.java:74)
    at org.gradle.internal.operations.UnmanagedBuildOperationWrapper.runWithUnmanagedSupport(UnmanagedBuildOperationWrapper.java:45)
    at org.gradle.internal.operations.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:74)
    at org.gradle.configuration.internal.DefaultListenerBuildOperationDecorator$BuildOperationEmittingAction.execute(DefaultListenerBuildOperationDecorator.java:149)
    at org.gradle.internal.event.BroadcastDispatch$ActionInvocationHandler.dispatch(BroadcastDispatch.java:95)
    at org.gradle.internal.event.BroadcastDispatch$ActionInvocationHandler.dispatch(BroadcastDispatch.java:83)
    at org.gradle.internal.event.AbstractBroadcastDispatch.dispatch(AbstractBroadcastDispatch.java:43)
    at org.gradle.internal.event.BroadcastDispatch$SingletonDispatch.dispatch(BroadcastDispatch.java:245)
    at org.gradle.internal.event.BroadcastDispatch$SingletonDispatch.dispatch(BroadcastDispatch.java:157)
    at org.gradle.internal.event.AbstractBroadcastDispatch.dispatch(AbstractBroadcastDispatch.java:61)
    at org.gradle.internal.event.BroadcastDispatch$CompositeDispatch.dispatch(BroadcastDispatch.java:346)
    at org.gradle.internal.event.BroadcastDispatch$CompositeDispatch.dispatch(BroadcastDispatch.java:249)
    at org.gradle.internal.event.ListenerBroadcast.dispatch(ListenerBroadcast.java:141)
    at org.gradle.internal.event.ListenerBroadcast.dispatch(ListenerBroadcast.java:37)
    at org.gradle.internal.dispatch.ProxyDispatchAdapter$DispatchingInvocationHandler.invoke(ProxyDispatchAdapter.java:94)
    at com.sun.proxy.$Proxy28.projectsEvaluated(Unknown Source)
    at org.gradle.initialization.ProjectsEvaluatedNotifier$NotifyProjectsEvaluatedListeners.run(ProjectsEvaluatedNotifier.java:47)
    at org.gradle.internal.operations.DefaultBuildOperationRunner$1.execute(DefaultBuildOperationRunner.java:29)
    at org.gradle.internal.operations.DefaultBuildOperationRunner$1.execute(DefaultBuildOperationRunner.java:26)
    at org.gradle.internal.operations.DefaultBuildOperationRunner$3.execute(DefaultBuildOperationRunner.java:75)
    at org.gradle.internal.operations.DefaultBuildOperationRunner$3.execute(DefaultBuildOperationRunner.java:68)
    at org.gradle.internal.operations.DefaultBuildOperationRunner.execute(DefaultBuildOperationRunner.java:153)
    at org.gradle.internal.operations.DefaultBuildOperationRunner.execute(DefaultBuildOperationRunner.java:68)
    at org.gradle.internal.operations.DefaultBuildOperationRunner.run(DefaultBuildOperationRunner.java:56)
    at org.gradle.internal.operations.DefaultBuildOperationExecutor.lambda$run$1(DefaultBuildOperationExecutor.java:74)
    at org.gradle.internal.operations.UnmanagedBuildOperationWrapper.runWithUnmanagedSupport(UnmanagedBuildOperationWrapper.java:45)
    at org.gradle.internal.operations.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:74)
    at org.gradle.initialization.ProjectsEvaluatedNotifier.notify(ProjectsEvaluatedNotifier.java:35)
    at org.gradle.configuration.DefaultProjectsPreparer.prepareProjects(DefaultProjectsPreparer.java:51)
    at org.gradle.configuration.BuildTreePreparingProjectsPreparer.prepareProjects(BuildTreePreparingProjectsPreparer.java:64)
    at org.gradle.configuration.BuildOperationFiringProjectsPreparer$ConfigureBuild.run(BuildOperationFiringProjectsPreparer.java:52)
    at org.gradle.internal.operations.DefaultBuildOperationRunner$1.execute(DefaultBuildOperationRunner.java:29)
    at org.gradle.internal.operations.DefaultBuildOperationRunner$1.execute(DefaultBuildOperationRunner.java:26)
    at org.gradle.internal.operations.DefaultBuildOperationRunner$3.execute(DefaultBuildOperationRunner.java:75)
    at org.gradle.internal.operations.DefaultBuildOperationRunner$3.execute(DefaultBuildOperationRunner.java:68)
    at org.gradle.internal.operations.DefaultBuildOperationRunner.execute(DefaultBuildOperationRunner.java:153)
    at org.gradle.internal.operations.DefaultBuildOperationRunner.execute(DefaultBuildOperationRunner.java:68)
    at org.gradle.internal.operations.DefaultBuildOperationRunner.run(DefaultBuildOperationRunner.java:56)
    at org.gradle.internal.operations.DefaultBuildOperationExecutor.lambda$run$1(DefaultBuildOperationExecutor.java:74)
    at org.gradle.internal.operations.UnmanagedBuildOperationWrapper.runWithUnmanagedSupport(UnmanagedBuildOperationWrapper.java:45)
    at org.gradle.internal.operations.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:74)
    at org.gradle.configuration.BuildOperationFiringProjectsPreparer.prepareProjects(BuildOperationFiringProjectsPreparer.java:40)
    at org.gradle.initialization.VintageBuildModelController.prepareProjects(VintageBuildModelController.java:85)
    at org.gradle.initialization.VintageBuildModelController.doBuildStages(VintageBuildModelController.java:69)
    at org.gradle.initialization.VintageBuildModelController.scheduleRequestedTasks(VintageBuildModelController.java:61)
    at org.gradle.internal.build.DefaultBuildLifecycleController.lambda$scheduleRequestedTasks$1(DefaultBuildLifecycleController.java:112)
    at org.gradle.internal.build.DefaultBuildLifecycleController.withModel(DefaultBuildLifecycleController.java:134)
    at org.gradle.internal.build.DefaultBuildLifecycleController.scheduleRequestedTasks(DefaultBuildLifecycleController.java:110)
    at org.gradle.internal.buildtree.DefaultBuildTreeLifecycleController.lambda$fromBuildModel$2(DefaultBuildTreeLifecycleController.java:72)
    at org.gradle.internal.buildtree.DefaultBuildTreeLifecycleController.lambda$doBuild$4(DefaultBuildTreeLifecycleController.java:105)
    at org.gradle.internal.work.DefaultWorkerLeaseService.withLocks(DefaultWorkerLeaseService.java:213)
    at org.gradle.internal.buildtree.DefaultBuildTreeLifecycleController.doBuild(DefaultBuildTreeLifecycleController.java:99)
    at org.gradle.internal.buildtree.DefaultBuildTreeLifecycleController.fromBuildModel(DefaultBuildTreeLifecycleController.java:70)
    at org.gradle.tooling.internal.provider.runner.AbstractClientProvidedBuildActionRunner.runClientAction(AbstractClientProvidedBuildActionRunner.java:58)
    at org.gradle.tooling.internal.provider.runner.ClientProvidedPhasedActionRunner.run(ClientProvidedPhasedActionRunner.java:52)
    at org.gradle.launcher.exec.ChainingBuildActionRunner.run(ChainingBuildActionRunner.java:35)
    at org.gradle.internal.buildtree.ProblemReportingBuildActionRunner.run(ProblemReportingBuildActionRunner.java:50)
    at org.gradle.launcher.exec.BuildOutcomeReportingBuildActionRunner.run(BuildOutcomeReportingBuildActionRunner.java:69)
    at org.gradle.tooling.internal.provider.FileSystemWatchingBuildActionRunner.run(FileSystemWatchingBuildActionRunner.java:90)
    at org.gradle.launcher.exec.BuildCompletionNotifyingBuildActionRunner.run(BuildCompletionNotifyingBuildActionRunner.java:41)
    at org.gradle.launcher.exec.RootBuildLifecycleBuildActionExecutor.lambda$execute$0(RootBuildLifecycleBuildActionExecutor.java:40)
    at org.gradle.composite.internal.DefaultRootBuildState.run(DefaultRootBuildState.java:128)
    at org.gradle.launcher.exec.RootBuildLifecycleBuildActionExecutor.execute(RootBuildLifecycleBuildActionExecutor.java:40)
    at org.gradle.internal.buildtree.DefaultBuildTreeContext.execute(DefaultBuildTreeContext.java:40)
    at org.gradle.launcher.exec.BuildTreeLifecycleBuildActionExecutor.lambda$execute$0(BuildTreeLifecycleBuildActionExecutor.java:40)
    at org.gradle.internal.buildtree.BuildTreeState.run(BuildTreeState.java:53)
    at org.gradle.launcher.exec.BuildTreeLifecycleBuildActionExecutor.execute(BuildTreeLifecycleBuildActionExecutor.java:40)
    at org.gradle.launcher.exec.RunAsBuildOperationBuildActionExecutor$3.call(RunAsBuildOperationBuildActionExecutor.java:61)
    at org.gradle.launcher.exec.RunAsBuildOperationBuildActionExecutor$3.call(RunAsBuildOperationBuildActionExecutor.java:57)
    at org.gradle.internal.operations.DefaultBuildOperationRunner$CallableBuildOperationWorker.execute(DefaultBuildOperationRunner.java:200)
    at org.gradle.internal.operations.DefaultBuildOperationRunner$CallableBuildOperationWorker.execute(DefaultBuildOperationRunner.java:195)
    at org.gradle.internal.operations.DefaultBuildOperationRunner$3.execute(DefaultBuildOperationRunner.java:75)
    at org.gradle.internal.operations.DefaultBuildOperationRunner$3.execute(DefaultBuildOperationRunner.java:68)
    at org.gradle.internal.operations.DefaultBuildOperationRunner.execute(DefaultBuildOperationRunner.java:153)
    at org.gradle.internal.operations.DefaultBuildOperationRunner.execute(DefaultBuildOperationRunner.java:68)
    at org.gradle.internal.operations.DefaultBuildOperationRunner.call(DefaultBuildOperationRunner.java:62)
    at org.gradle.internal.operations.DefaultBuildOperationExecutor.lambda$call$2(DefaultBuildOperationExecutor.java:79)
    at org.gradle.internal.operations.UnmanagedBuildOperationWrapper.callWithUnmanagedSupport(UnmanagedBuildOperationWrapper.java:54)
    at org.gradle.internal.operations.DefaultBuildOperationExecutor.call(DefaultBuildOperationExecutor.java:79)
    at org.gradle.launcher.exec.RunAsBuildOperationBuildActionExecutor.execute(RunAsBuildOperationBuildActionExecutor.java:57)
    at org.gradle.tooling.internal.provider.ContinuousBuildActionExecutor.execute(ContinuousBuildActionExecutor.java:103)
    at org.gradle.tooling.internal.provider.SubscribableBuildActionExecutor.execute(SubscribableBuildActionExecutor.java:64)
    at org.gradle.internal.session.DefaultBuildSessionContext.execute(DefaultBuildSessionContext.java:46)
    at org.gradle.tooling.internal.provider.BuildSessionLifecycleBuildActionExecuter.lambda$execute$0(BuildSessionLifecycleBuildActionExecuter.java:55)
    at org.gradle.internal.session.BuildSessionState.run(BuildSessionState.java:69)
    at org.gradle.tooling.internal.provider.BuildSessionLifecycleBuildActionExecuter.execute(BuildSessionLifecycleBuildActionExecuter.java:54)
    at org.gradle.tooling.internal.provider.BuildSessionLifecycleBuildActionExecuter.execute(BuildSessionLifecycleBuildActionExecuter.java:36)
    at org.gradle.tooling.internal.provider.GradleThreadBuildActionExecuter.execute(GradleThreadBuildActionExecuter.java:36)
    at org.gradle.tooling.internal.provider.GradleThreadBuildActionExecuter.execute(GradleThreadBuildActionExecuter.java:25)
    at org.gradle.tooling.internal.provider.StartParamsValidatingActionExecuter.execute(StartParamsValidatingActionExecuter.java:63)
    at org.gradle.tooling.internal.provider.StartParamsValidatingActionExecuter.execute(StartParamsValidatingActionExecuter.java:31)
    at org.gradle.tooling.internal.provider.SessionFailureReportingActionExecuter.execute(SessionFailureReportingActionExecuter.java:58)
    at org.gradle.tooling.internal.provider.SessionFailureReportingActionExecuter.execute(SessionFailureReportingActionExecuter.java:42)
    at org.gradle.tooling.internal.provider.SetupLoggingActionExecuter.execute(SetupLoggingActionExecuter.java:47)
    at org.gradle.tooling.internal.provider.SetupLoggingActionExecuter.execute(SetupLoggingActionExecuter.java:31)
    at org.gradle.launcher.daemon.server.exec.ExecuteBuild.doBuild(ExecuteBuild.java:65)
    at org.gradle.launcher.daemon.server.exec.BuildCommandOnly.execute(BuildCommandOnly.java:37)
    at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:104)
    at org.gradle.launcher.daemon.server.exec.WatchForDisconnection.execute(WatchForDisconnection.java:39)
    at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:104)
    at org.gradle.launcher.daemon.server.exec.ResetDeprecationLogger.execute(ResetDeprecationLogger.java:29)
    at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:104)
    at org.gradle.launcher.daemon.server.exec.RequestStopIfSingleUsedDaemon.execute(RequestStopIfSingleUsedDaemon.java:35)
    at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:104)
    at org.gradle.launcher.daemon.server.exec.ForwardClientInput$2.create(ForwardClientInput.java:78)
    at org.gradle.launcher.daemon.server.exec.ForwardClientInput$2.create(ForwardClientInput.java:75)
    at org.gradle.util.internal.Swapper.swap(Swapper.java:38)
    at org.gradle.launcher.daemon.server.exec.ForwardClientInput.execute(ForwardClientInput.java:75)
    at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:104)
    at org.gradle.launcher.daemon.server.exec.LogAndCheckHealth.execute(LogAndCheckHealth.java:55)
    at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:104)
    at org.gradle.launcher.daemon.server.exec.LogToClient.doBuild(LogToClient.java:63)
    at org.gradle.launcher.daemon.server.exec.BuildCommandOnly.execute(BuildCommandOnly.java:37)
    at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:104)
    at org.gradle.launcher.daemon.server.exec.EstablishBuildEnvironment.doBuild(EstablishBuildEnvironment.java:84)
    at org.gradle.launcher.daemon.server.exec.BuildCommandOnly.execute(BuildCommandOnly.java:37)
    at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:104)
    at org.gradle.launcher.daemon.server.exec.StartBuildOrRespondWithBusy$1.run(StartBuildOrRespondWithBusy.java:52)
    at org.gradle.launcher.daemon.server.DaemonStateCoordinator$1.run(DaemonStateCoordinator.java:297)
    at org.gradle.internal.concurrent.ExecutorPolicy$CatchAndRecordFailures.onExecute(ExecutorPolicy.java:64)
    at org.gradle.internal.concurrent.ManagedExecutorImpl$1.run(ManagedExecutorImpl.java:48)
    at org.gradle.internal.concurrent.ThreadFactoryImpl$ManagedThreadRunnable.run(ThreadFactoryImpl.java:56)
    Caused by: org.gradle.internal.resolve.ModuleVersionNotFoundException: Could not find net.minecraftforge:forge:1.16.5-36.2.20_mapped_official_1.16.5.
    Searched in the following locations:

    file:/C:/Users/mimi8/.gradle/caches/forge_gradle/bundeled_repo/net/minecraftforge/forge/1.16.5-36.2.20_mapped_official_1.16.5/forge-1.16.5-36.2.20_mapped_official_1.16.5.pom
    file:/C:/Users/mimi8/.gradle/caches/forge_gradle/bundeled_repo/net/minecraftforge/forge/1.16.5-36.2.20_mapped_official_1.16.5/forge-1.16.5-36.2.20_mapped_official_1.16.5.jar
    Required by:
    project :

    Get more help at https://help.gradle.org

    BUILD FAILED in 43s

    Deprecated Gradle features were used in this build, making it incompatible with Gradle 8.0.

    You can use '--warning-mode all' to show the individual deprecation warnings and determine if they come from your own scripts or plugins.

    See https://docs.gradle.org/7.1.1/userguide/command_line_interface.html#sec:command_line_warnings

    といわれ、エラーの場所をクリックしたら
    Could not resolve all files for configuration ':runtimeClasspathCopy'.

    Could not find net.minecraftforge:forge:1.16.5-36.2.20_mapped_official_1.16.5.
    Searched in the following locations:
    - file:/C:/Users/mimi8/.gradle/caches/forge_gradle/bundeled_repo/net/minecraftforge/forge/1.16.5-36.2.20_mapped_official_1.16.5/forge-1.16.5-36.2.20_mapped_official_1.16.5.pom
    - file:/C:/Users/mimi8/.gradle/caches/forge_gradle/bundeled_repo/net/minecraftforge/forge/1.16.5-36.2.20_mapped_official_1.16.5/forge-1.16.5-36.2.20_mapped_official_1.16.5.jar
    Required by:
    project :

    Possible solution:
    - Declare repository providing the artifact, see the documentation at https://docs.gradle.org/current/userguide/declaring_repositories.html
    と書いてありました。お手数おかけいたしますが、ご教授頂けると幸いです

    • 赤砂蛇 凪浜

      こちらのログについては、使われているJDKのバージョンが11になっています。IntelliJ IDEAでProject Structure > Project > SDKから1.8のEclipse Temurin (AdoptOpenJDK (HotSpot))を指定してください。

      また、手順10で「runClient」が表示されない問題については、手順8に成功しているとのことなので、IntelliJ IDEAを再起動してみてください。それでも読み込まれなければ、再度手順8以降を実行して、手順8のログをお知らせください。

      プロジェクトの読み込みが短時間で終わること自体は正常な動作で、問題ありません。また、IntelliJ IDEAによるプラグインの提案も無視してかまいません。

      • いち早い返信ありがとうございます
        早く終わるのは正常なのですね、安心しました
        下記が手順8のログです
        12:52:29: Executing 'genIntellijRuns'...

        Configure project :
        Java: 1.8.0_322 JVM: 25.322-b06(Temurin) Arch: amd64
        WARNING: This project is configured to use the official obfuscation mappings provided by Mojang. These mapping fall under their associated license, you should be fully aware of this license. For the latest license text, refer below, or the reference copy here: https://github.com/MinecraftForge/MCPConfig/blob/master/Mojang.md, You can hide this warning by running the hideOfficialWarningUntilChanged task
        WARNING: (c) 2020 Microsoft Corporation. These mappings are provided "as-is" and you bear the risk of using them. You may copy and use the mappings for development purposes, but you may not redistribute the mappings complete and unmodified. Microsoft makes no warranties, express or implied, with respect to the mappings provided here. Use and modification of this document or the source code (in any form) of Minecraft: Java Edition is governed by the Minecraft End User License Agreement available at https://account.mojang.com/documents/minecraft_eula.

        Task :downloadMcpConfig
        Task :extractSrg
        Task :createSrgToMcp
        Task :downloadMCMeta
        Task :downloadAssets
        Task :extractNatives
        Task :makeSrcDirs
        Task :prepareRuns
        Task :genIntellijRuns

        Deprecated Gradle features were used in this build, making it incompatible with Gradle 8.0.

        You can use '--warning-mode all' to show the individual deprecation warnings and determine if they come from your own scripts or plugins.

        See https://docs.gradle.org/7.1.1/userguide/command_line_interface.html#sec:command_line_warnings

        BUILD SUCCESSFUL in 5s
        8 actionable tasks: 8 executed
        12:52:35: Execution finished 'genIntellijRuns'.
        相変わらずrunClientはありません。

        • 赤砂蛇 凪浜

          ログを見る限り、JDKのバージョンは1.8で正しく認識され、正常に手順8が完了しています。IntelliJ IDEAやPC本体の再起動の後に同じプロジェクトを開いてみてください。

          それでも解決しなければ、TitaniumMod/%USERPROFILE%/.gradleを削除して、もう一度環境構築を最初からやり直してみてください。

          • 出来ました!貴重なお時間使っていただいてありがとうございます!!!
            MOD作成に精を出していきます!!!

  3. Starting Gradle Daemon...
    Gradle Daemon started in 1 s 478 ms

    Configure project :
    Java: 1.8.0_322 JVM: 25.322-b06(Temurin) Arch: amd64
    WARNING: This project is configured to use the official obfuscation mappings provided by Mojang. These mapping fall under their associated license, you should be fully aware of this license. For the latest license text, refer below, or the reference copy here: https://github.com/MinecraftForge/MCPConfig/blob/master/Mojang.md, You can hide this warning by running the hideOfficialWarningUntilChanged task
    WARNING: (c) 2020 Microsoft Corporation. These mappings are provided "as-is" and you bear the risk of using them. You may copy and use the mappings for development purposes, but you may not redistribute the mappings complete and unmodified. Microsoft makes no warranties, express or implied, with respect to the mappings provided here. Use and modification of this document or the source code (in any form) of Minecraft: Java Edition is governed by the Minecraft End User License Agreement available at https://account.mojang.com/documents/minecraft_eula.

    Task :prepareKotlinBuildScriptModel UP-TO-DATE

    Deprecated Gradle features were used in this build, making it incompatible with Gradle 8.0.

    You can use '--warning-mode all' to show the individual deprecation warnings and determine if they come from your own scripts or plugins.

    See https://docs.gradle.org/7.1.1/userguide/command_line_interface.html#sec:command_line_warnings

    BUILD SUCCESSFUL in 14s
    と表示されビルドが途中で止まってしまいます。
    どうすれば解決できるか教えていただけると幸いです

    • 赤砂蛇 凪浜

      Forgeの手順6か9の実行結果でしたら、ログを見る限り問題ありません。先の手順に進んでエラーなどがでたら、そのログをお知らせください。

      Gradleは以前の実行結果を%USERPROFILE%/.gradleに保持しており、二回目以降の実行で可能ならそれを利用します。

      • 手順6になります。
        手順5でファイルを選択し、即この画面になります。
        手順6では10以上待ち時間があると書いてあったので数十秒で終わり違和感がありました。
        左のリロードボタンを押しても数十秒で終わる同じ結果に終わったので
        手順10までは問題なく実行できましたが、runClientの選択肢がそもそもありませんでした。
        手順9のGradle Tool Window左上の同期ボタンの肯定を行うと右下にプラグイン?の通知が出ます
        下記がその文です↓
        Recommended plugin available for dependency 'java:org.spongepowered:mixin, java:net.minecraftforge:forge'.
        対処法ありますでしょうか?

コメントはこちらです。(スパム対策の為コメントは手動承認になっています。未承認のコメントは表示されないので連投はお控え下さい。)

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください