【JavaFX】Eclipseのアクセス許可をbuild.gradleに書く方法
gradlew eclipseの度にエラーになっちゃう
Access restriction: The type 'TransferMode' is not API (restriction on required library 'C:\Program Files\Java\jdk1.8.0_211\jre\lib\ext\jfxrt.jar')
これは要するに以下の場所からアクセス許可を与えやればいいとの事である。
上の画像右、Editから編集してjavafx/**をルールでAccessibleに追加して許可してやれば良いわけだが。
流石にgradlew eclipseなんてコマンドは依存関係を更新する度に打つので毎度毎度こんな設定をさせられるのは鬱陶しい。
誰かがgitからcloneしたときに「これエラー出てるんですけど(笑)」とか言われるのも実に腹立たしい。
というわけで、gradleに書く方法。
import org.gradle.plugins.ide.eclipse.model.AccessRule
eclipse {
classpath {
file {
whenMerged {
def jre = entries.find { it.path.contains 'org.eclipse.jdt.launching.JRE_CONTAINER' }
jre.accessRules.add(new AccessRule('accessible', 'javafx/**'))
}
}
}
}
こんな感じ。
これでEclipseの.classpathに以下のように追加され、俺はマウスを使う量が減り、イライラが治る事で戦争が減り世界が平和になるという仕組みである。
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.8/">
<accessrules>
<accessrule kind="accessible" pattern="javafx/**"/>
</accessrules>
</classpathentry>
いつもありがとう、スタックオーバーフローの人。
それと、【JavaFX】Eclipseで、アクセス制限: The type '?' is not API(? ex: JavaFX)と出た時の対処法まとめの@smk7758さん。
よし大体定時だ。帰るぞ俺は。
Author And Source
この問題について(【JavaFX】Eclipseのアクセス許可をbuild.gradleに書く方法), 我々は、より多くの情報をここで見つけました https://qiita.com/Teramonte4/items/1bbfc7e7d5e496381c7a著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .