-
Posts
107 -
Joined
-
Last visited
Converted
-
Gender
Male
-
Location
Germany
Recent Profile Visitors
The recent visitors block is disabled and is not being shown to other users.
Maxi07's Achievements
Creeper Killer (4/8)
2
Reputation
-
This are my current thoughts and experiments to this: I added task sourceJar(type: Jar) { classifier = 'sources' from sourceSets.main.allJava } to my build.gradle and "artifact sourceJar" to the publish Now a source jar is generated on publish. But, unlike the jar, it is not reobfed (srg) What I expect to happen is the following: 1. On publish the jar and the sources.jar get generated and reobfed (not only the jar) 2. GenEclipseRuns copies the files to .gradle\caches\forge_gradle\deobf_dependencies and mappes them. So the file is now [jar_name]_mapped_snapshot_20200723-1.16.1.jar. And the obfed sources.jar gets mapped too and is then [jar_name]_mapped_snapshot_20200723-1.16.1-sources.jar 3. GenEclipseRuns then should tell eclipse that the jar is the lib and that the source can be found in the sources.jar (I can tell eclipse manually where to find the source and javadoc files, but only if it is a java project and not a gradle project) Does this makes sense and is good system? (I am sorry, if this is completly stupid) If it is: neither 1, nor 2, nor 3 are happening I dont know if this is the system you are already working on. ------------------------------------------------------------------------------- @DaemonUmbra What is your current progress? What have you already done? Is there any way I can help speeding this up or an alternative? And thanks for trying to help me!
-
@DaemonUmbra Anything new?
-
1.16.2 changed the world gen completely, some parts are already back, but not everything is working in 1.16.2 as expected now. I stick with 1.16.1, because I use world gen too.
-
But, restoring the source code, via decompiling will never be better then the original. If using a source.jar works, why not using it? The source.jar is just not generating. But other modders manage it to generate it on publish (example: https://dvs1.progwml6.com/files/maven/mezz/jei/jei-1.16.1/7.0.1.10/), so it is possible. The Question is just how? And the default build.gradle seems to be broken: // makeObfSourceJar = false // an Srg named sources jar is made by default. uncomment this to disable. because it is not made by default
-
By the way, I now switched from a flatDir to a maven (similar like Ommina said), because it is a bit simpler for me. And I also learned a bit new about maven and gradle. I am 99.99% sure I need the sources.jar. I already looked where eclipse found the source for minecraft and forge, it's the sources.jar. With these files my maven looks almost like the one from other mods, except the sources.jar (and sources.jar.sha1/md5). So when I run publish the [jar name]-sources.jar has to be geratend too! I already tried adding the line makeObfSourceJar = true but then is crashed @DaemonUmbra and everyone, do you have any idea how to do this? Sorry for bad english at this post
-
Just to make sure we stay on topic, here is my main question
-
Why do I not need the sources jar? Every other mod and forge use a sources.jar
-
This has nothing to do with the sources.jar (I am already using a flatDir repo)!
-
Yes, but actually now it's all about finding the sources.jar
-
I think, now I have finally got the solution! After I saw the topic "[1.14.4] How add JEI to own mod?", I focused on trying to find out how other mods do this. The problem is clear: eclipse has found no source code. And I think this is not a bug, there is just no source code. As far as I know, the faltDir behaves like a regular maven repository. At any mod I have looked (forge too), there is either a [jar name]-sources.jar (it is like the regular jar, but every .class file is the .java file) or the jar not only contains the .class file, but also the .java files. For example the mezz.jei repo at https://dvs1.progwml6.com/files/maven/ Lines from my build.gradle: // The mappings can be changed at any time, and must be in the following format. // snapshot_YYYYMMDD Snapshot are built nightly. // stable_# Stables are built at the discretion of the MCP team. // Use non-default mappings at your own risk. they may not always work. // Simply re-run your setup task after changing the mappings to update your workspace. mappings channel: 'snapshot', version: '20200723-1.16.1' // makeObfSourceJar = false // an Srg named sources jar is made by default. uncomment this to disable. // accessTransformer = file('src/main/resources/META-INF/accesstransformer.cfg') // Default run configurations. // These can be tweaked, removed, or duplicated as needed. The is the comment "an Srg named sources jar is made by default". The fact that it is srg named should not matter, because it gets mapped. But the fact that a [jar name]-sources.jar is created is interesting. If I were right right, I would just have to find this [jar name]-sources.jar. And is where I need your help. Where is the sources.jar? Or do I have to add makeObfSourceJar = true (maybe the default is not working)
-
Maybe a multi build project will be easier and work?