You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@kylin.apache.org by "Wang Cheng (JIRA)" <ji...@apache.org> on 2017/02/24 02:12:44 UTC

[jira] [Created] (KYLIN-2464) Leveraging interface declare to avoid runtime errors

Wang Cheng created KYLIN-2464:
---------------------------------

             Summary: Leveraging interface declare to avoid runtime errors
                 Key: KYLIN-2464
                 URL: https://issues.apache.org/jira/browse/KYLIN-2464
             Project: Kylin
          Issue Type: Bug
            Reporter: Wang Cheng
            Priority: Minor


There are some runtime errors happened when code is compiled with high Java version  and runs on low Java version, for example:

Exception in thread "main" java.lang.NoSuchMethodError: java.util.concurrent.ConcurrentHashMap.keySet()Ljava/util/concurrent/ConcurrentHashMap$KeySetView;
	at org.apache.kylin.cube.CubeManager.getInstance(SourceFile:110)
	at org.apache.kylin.tool.CubeMigrationCheckCLI.checkCube(CubeMigrationCheckCLI.java:141)
	at org.apache.kylin.tool.CubeMigrationCheckCLI.execute(CubeMigrationCheckCLI.java:121)
	at org.apache.kylin.tool.CubeMigrationCLI.checkMigrationSuccess(CubeMigrationCLI.java:170)
	at org.apache.kylin.tool.CubeMigrationCLI.moveCube(CubeMigrationCLI.java:156)
	at org.apache.kylin.tool.CubeMigrationCLI.moveCube(CubeMigrationCLI.java:165)
	at io.kyligence.kap.tool.release.KapReleaseCLI.main(KapReleaseCLI.java:66)

It's a better idea that declaring a variable to be an interface.



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)