You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@flink.apache.org by "Stephan Ewen (JIRA)" <ji...@apache.org> on 2016/05/31 15:52:13 UTC

[jira] [Closed] (FLINK-3886) Give a better error when the application Main class is not public.

     [ https://issues.apache.org/jira/browse/FLINK-3886?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Stephan Ewen closed FLINK-3886.
-------------------------------

> Give a better error when the application Main class is not public.
> ------------------------------------------------------------------
>
>                 Key: FLINK-3886
>                 URL: https://issues.apache.org/jira/browse/FLINK-3886
>             Project: Flink
>          Issue Type: Improvement
>            Reporter: Niels Basjes
>            Assignee: Niels Basjes
>             Fix For: 1.1.0
>
>         Attachments: FLINK-3886-20160509.patch
>
>
> I wrote a Flink application and made the simple mistake of making the Main class 'package private' by simply writing it as (note: I simply forgot the 'public' keyword)
> {code}
> class Main {
>    ...
> }
> {code}
> The error you get is:
> {code}
> Caused by: java.lang.IllegalAccessException: Class org.apache.flink.client.program.PackagedProgram can not access a member of class com.bol.experiment.flink.Main with modifiers "public static"
> 	at sun.reflect.Reflection.ensureMemberAccess(Reflection.java:102)
> 	at java.lang.reflect.AccessibleObject.slowCheckMemberAccess(AccessibleObject.java:296)
> 	at java.lang.reflect.AccessibleObject.checkAccess(AccessibleObject.java:288)
> 	at java.lang.reflect.Method.invoke(Method.java:490)
> 	at org.apache.flink.client.program.PackagedProgram.callMainMethod(PackagedProgram.java:505)
> {code}
> This took me 30 minutes to figure out what I did wrong.
> I think the error message should be more explanatory to the developer.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)