St3ix Docs

Keep rules

veyl.rules format, auto-detect, and recommendations.

Keeps are class or member names that must stay readable so frameworks can load them (Paper main, services, reflection).

Project layout

veyl.rules
build.gradle
settings.gradle

Files

Auto-detected in the project root (first match wins):

  1. veyl.rules
  2. veyl-keeps.txt
  3. .veylkeep

Or set explicitly: Gradle keepFile = file('veyl.rules'), Maven <keepFile>veyl.rules</keepFile>.

Format

# comments
me.example.MyPlugin
me.example.api.**
me.example.Util#helper
keep me.example.MyPlugin
-keep class me.example.MyPlugin
PatternMeaning
com.foo.BarExact class
com.foo.*Classes in that package only
com.foo.**Package and subpackages
com.foo.Bar#methodKeep a member name

DSL keep '…' entries are merged with the file (duplicates removed).

Recommendations

On each job, Veyl inspects the JAR (same engine as veyl recommend) and can log keeps that are not yet covered:

Veyl: recommended keeps not yet configured (3):
  -> me.example.MyPlugin  (Bukkit plugin main)
veyl recommend path\to\app.jar --out veyl.rules

Turn the log off with suggestKeeps = false if needed.

On this page