Immersive Engineering

Immersive Engineering

134M Downloads

Allow mods to depend only on the IE API via maven.

Phylogeny opened this issue ยท 2 comments

commented

The API jars at https://maven.blamejared.com/blusunrize/ImmersiveEngineering/ do not contain class files (only java files), making deobfCompile "blusunrize:ImmersiveEngineering:[version]:api" useless as a dependency.

commented

I don't mind running IE in the dev environment. The problem is not just the potential for accidental core reference, but simply the fact that the core classes are just annoying clutter/distraction in the IDE when it comes to everything from searches to suggestions. It's quite standard to provide the means of only compiling the API for multiple reasons, really. It's definitely useful.

commented

I agree that this isn't ideal, but it doesn't seem all that useful to have a compiled API download (though I don't really see a reason for API source either). If you want to be able to run your mod in dev without IE, use compileOnly rather than deobfCompile (deobfProvided may also work). The only other reason I can see would be to prevent accidental usage of non-API classes: The problem with that is that IE's API isn't that well-designed and, as far as I know, a lot of things can't be done without internal IE classes or something really hacky (this includes detecting e.g. whether a block is an HV or an LV connector etc).