開発環境を作る2

開発環境をカスタマイズする

 build.gradleの内容を編集することで、開発及びビルドの環境をカスタム出来ます。
 出来ることはいろいろありますが、ここでは要求度の高そうなものについて説明していきます。

build.gradleの設定

 デフォルトのbuild.gradleはこんな感じ。

buildscript {
  repositories {
       mavenCentral()
       maven {
           name = "forge"
           url = "http://files.minecraftforge.net/maven"
       }
       maven {
           name = "sonatype"
           url = "https://oss.sonatype.org/content/repositories/snapshots/"
       }
   }
   dependencies {
       classpath 'net.minecraftforge.gradle:ForgeGradle:1.2-SNAPSHOT'
   }
}
apply plugin: 'forge'

version = "1.0"
group= "com.yourname.modid" // http://maven.apache.org/guides/mini/guide-naming-conventions.html
archivesBaseName = "modid"

minecraft {
  version = "1.7.10-10.13.4.1448-1.7.10"
   runDir = "eclipse"
}

dependencies {
// you may put jars on which you depend on in ./libs
// or you may define them like so..
//compile "some.group:artifact:version:classifier"
//compile "some.group:artifact:version"
   
// real examples
//compile 'com.mod-buildcraft:buildcraft:6.0.8:dev' // adds buildcraft to the dev env
//compile 'com.googlecode.efficient-java-matrix-library:ejml:0.24' // adds ejml to the dev env

// for more info...
// http://www.gradle.org/docs/current/userguide/artifact_dependencies_tutorial.html
// http://www.gradle.org/docs/current/userguide/dependency_management.html

}

processResources
{
  // this will ensure that this task is redone when the versions change.
   inputs.property "version", project.version
   inputs.property "mcversion", project.minecraft.version

  // replace stuff in mcmod.info, nothing else
   from(sourceSets.main.resources.srcDirs) {
       include 'mcmod.info'
               
       // replace version and mcversion
       expand 'version':project.version, 'mcversion':project.minecraft.version
   }
       
   // copy everything else, thats not the mcmod.info
   from(sourceSets.main.resources.srcDirs) {
       exclude 'mcmod.info'
   }
}

 赤字部分の変更・あるいは下部に新しい行を継ぎ足し で済む方法のみを、ここでは記述していきます。
 他にも改変ポイントはあるのですが、今回は割愛。

MODの基本情報

version = "1.0"
group= "com.yourname.modid" // http://maven.apache.org/guides/mini/guide-naming-conventions.html
archivesBaseName = "modid"


 この部分はデフォルトのままでも動作はしますが、
 archivesBaseNameは出力時のMODのパッケージ名、versionはバージョンを変更できるので、
 MOD出力後に手作業でパッケージ名を変更するよりここで変更した方が楽です。

 groupは(ライブラリ自動DL用などで)mavenを利用するときに変更する部分のようです。
 不要であればデフォルトのままでもOK。


dependencyの設定

 赤字のdependenciesの部分では、
 開発及びビルドに必要なライブラリを指定できます。

 これを、まずこのように変更します。

dependencies {
  compile fileTree(dir: 'libs', include: '*.jar')
}

 これは、「build.gradleのこのファイルと同じディレクトリ内に「libs」というフォルダがあるなら、
 その中にある、拡張子が.jarのファイルをライブラリとしてコンパイル時に使用できる」という設定です。
 更に、eclipse上でのビルドパスの指定なども自動で行ってくれるので、ライブラリに含まれるソースコードも開発に活用できます。

 次に、実際にフォルダを作ります。
 libs.PNG

 使いたいライブラリ(deobf版のMODなど)がある場合はここで入れてしまってOK。
 deobf版MODの場合、ここにライブラリとして入れれば、デバッグプレイ時にも導入された状態で起動できます
 私の場合は、自作MOD自体がお助けライブラリとして機能するため&デバッグプレイで使いたいため、
 自作MODのdeobf版は大抵放り込んでいます。

 ※注意点として、開発環境の場合は実環境以上にバージョンあわせがシビアになるようです。
  deobf版のバージョンを変えたら動かなくなった、Forgeを上げたら動かなくなった、というのが頻発したりします。
  動くバージョンを根気よく探る気力も必要です。


文字コードを変更する

 デフォルトではソースコードやビルド時にはSJISが使われていますが、このままではソースコードに日本語を含んでいるとビルドできなくなります。
 そこで、文字コードの設定をUTF-8に変更します。

def defaultEncoding = 'UTF-8'
compileJava {
  options.encoding = defaultEncoding
}
[compileJava, compileTestJava,compileApiJava,recompMinecraft].each{
  it.options.encoding = 'UTF-8'
   it.options.compilerArgs += ['-source', '1.7', '-target', '1.7'] 
}

 上記の記述を、build.gradleの下部当たりに追加して下さい。


build.gradle変更後

 編集したら保存しましょう。
 注意点:保存時の文字コードはSJISで保存するか、BOMなしの文字コードにしましょう。
 BOMつきUTF-8等で保存してしまうと1行目にバケ文字が挿入されてしまい、正常に環境が作れなくなります。

 保存後は、install.batをダブルクリック。
 build successの文字がコンソールに出ていれば、build.gradleでの環境カスタムは完了です。

 この後も、build.gradle変更後はinstall.batを叩かないと変更が反映されませんので、覚えておきましょう。

 install.bat後、Eclipseを起動すれば、「libs」フォルダに入れていたdeobf版MODもプロジェクトに反映しているはずです。
 こんな感じ。
 library.PNG


Eclipseの設定変更

 以下は日本語版の場合なので、日本語化していないものだと名称が異なると思います。

文字コードの変更

  • ウィンドウタブからの変更

 「ウィンドウ」タブ→設定 を開きます。
 設定のうち、「一般」→「エディター」→「テキストエディター」→「スペル」を選択。
 
 「エンコード」という項目があるので、そこでUTF-8を選んで設定を保存します。

 encode.PNG

  • プロジェクトのプロパティからの変更

 プロジェクトエクスプローラに表示されている「Minecraft」のプロジェクトを右クリック。
 「プロパティー」を選択します。

 ここで、「テキストファイルのエンコード」の項目がUTF-8になっていなければUTF-8を選択して保存しましょう。

 encode2.PNG



 文字コードの選択はこれでOKです。

 ここまで設定すれば、日本語を含む自分のソースや和製MODが含まれていてもコンパイルできる環境が整います。
 

  • 最終更新:2015-10-04 19:45:38

このWIKIを編集するにはパスワード入力が必要です

認証パスワード