You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@geode.apache.org by "ASF subversion and git services (Jira)" <ji...@apache.org> on 2019/08/22 16:41:00 UTC
[jira] [Commented] (GEODE-130) Suppress proprietary API compiler
warnings
[ https://issues.apache.org/jira/browse/GEODE-130?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16913487#comment-16913487 ]
ASF subversion and git services commented on GEODE-130:
-------------------------------------------------------
Commit 7efc2cdc009ff3f577d50f63947d1957e1ca7f50 in geode's branch refs/heads/develop from Jacob Barrett
[ https://gitbox.apache.org/repos/asf?p=geode.git;h=7efc2cd ]
GEODE-130: Cleanup internal API warnings. (#3872)
* Isolate API warnings to unsafe module.
* Ignore API warnings on unsafe module only.
> Suppress proprietary API compiler warnings
> ------------------------------------------
>
> Key: GEODE-130
> URL: https://issues.apache.org/jira/browse/GEODE-130
> Project: Geode
> Issue Type: Bug
> Components: build
> Reporter: Anthony Baker
> Assignee: Jacob S. Barrett
> Priority: Trivial
> Time Spent: 3h 50m
> Remaining Estimate: 0h
>
> Geode uses several internal JDK classes like SignalHandler and Unsafe. These generate compiler warnings like:
> {noformat}
> /Users/abaker/code/incubator-geode/gemfire-core/src/main/java/com/gemstone/gemfire/management/internal/cli/shell/unsafe/GfshSignalHandler.java:73: warning: SignalHandler is internal proprietary API and may be removed in a future release
> return (handler == SignalHandler.SIG_DFL || handler == SignalHandler.SIG_IGN ? null : handler);
> {noformat}
> It would be nice to suppress these using the {{-XDignore.symbol.file=true}} javac argument ([1|http://stackoverflow.com/questions/4065401/using-internal-sun-classes-with-javac]) to remove noise from the build output. Looks like the only way to do this is to fork the javac compiler from gradle ([2|https://discuss.gradle.org/t/passing-arguments-to-compiler-and-javadoc/1661]) and add a compiler arg:
> {noformat}
> options.fork = true
> options.forkOptions.executable = 'javac'
> options.compilerArgs << '-XDignore.symbol.file'
> {noformat}
> I'm not sure it's worth the performance hit of forking javac to suppress the warnings.
> Of course, we will need to address usage of these API's in Java9 as we will not have access to internal JDK classes (due to Project Jigsaw).
--
This message was sent by Atlassian Jira
(v8.3.2#803003)