Skip to content

Commit

Permalink
Attempting to fix issues with integration with mapstruct; issue #1359
Browse files Browse the repository at this point in the history
  • Loading branch information
rzwitserloot committed Jul 17, 2018
1 parent 0375f1a commit a195a47
Show file tree
Hide file tree
Showing 3 changed files with 10 additions and 3 deletions.
3 changes: 2 additions & 1 deletion build.xml
Original file line number Diff line number Diff line change
Expand Up @@ -261,7 +261,8 @@ the common tasks and can be called on to run the main aspects of all the sub-scr
<src path="src/j9stubs" />
<!-- This includes org.mapstruct.ap.spi.AstModifyingAnnotationProcessor; putting this on the classpath doesn't work (needs to be internal or a module) so we just add it and then delete the class file for convenience. -->
</ivy:compile>
<delete file="build/lombok/org/mapstruct/ap/spi/AstModifyingAnnotationProcessor.class" />
<mkdir dir="build/lombok/secondaryLoading.SCL.lombok/org/mapstruct/ap/spi" />
<move file="build/lombok/org/mapstruct/ap/spi/AstModifyingAnnotationProcessor.class" tofile="build/lombok/secondaryLoading.SCL.lombok/org/mapstruct/ap/spi/AstModifyingAnnotationProcessor.SCL.lombok" />

<ivy:compile destdir="build/lombok/Class50" source="1.5" target="1.6" ecj="true" nowarn="true" includeSystemBootclasspath="true">
<bootclasspath location="build/stubs" />
Expand Down
1 change: 1 addition & 0 deletions doc/changelog.markdown
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@ Lombok Changelog
----------------

### v1.18.1 "Edgy Guinea Pig"
* BUGFIX: mapstruct + lombok in eclipse should hopefully work again. [Issue #1359](https://github.com/rzwitserloot/lombok/issues/1359) and [mapstruct issue #1159](https://github.com/mapstruct/mapstruct/issues/1159)
* BUGFIX: Equals and hashCode again exclude transient fields by default. [Issue #1724](https://github.com/rzwitserloot/lombok/issues/1724)
* FEATURE: You can now make builders for type hierarchies, using the new (experimental) `@SuperBuilder` annotation. Thanks for the contribution, Jan Rieke. [`@SuperBuilder` documentation](https://projectlombok.org/features/experimental/SuperBuilder)
* FEATURE: `@NoArgsConstructor`, including forcing one with `lombok.config: lombok.noArgsConstructor.extraPrivate=true` now take any defaults set with `@Builder.Default` into account. [Issue #1347](https://github.com/rzwitserloot/lombok/issues/1347)
Expand Down
9 changes: 7 additions & 2 deletions src/launch/lombok/launch/ShadowClassLoader.java
Original file line number Diff line number Diff line change
Expand Up @@ -526,9 +526,14 @@ private URL getResourceSkippingSelf(String name) throws IOException {
String fileNameOfClass = name.replace(".", "/") + ".class";
URL res = getResource_(fileNameOfClass, true);
if (res == null) {
if (!exclusionListMatch(fileNameOfClass)) return super.loadClass(name, resolve);
throw new ClassNotFoundException(name);
if (!exclusionListMatch(fileNameOfClass)) try {
return super.loadClass(name, resolve);
} catch (ClassNotFoundException cnfe) {
res = getResource_("secondaryLoading.SCL." + sclSuffix + "/" + name.replace(".", "/") + ".SCL." + sclSuffix, true);
if (res == null) throw cnfe;
}
}
if (res == null) throw new ClassNotFoundException(name);

byte[] b;
int p = 0;
Expand Down

0 comments on commit a195a47

Please sign in to comment.