### ReferenceConfig#init , at line 307
change : prifix -> prefix
<img width="746" alt="1" src="https://user-images.githubusercontent.com/6971152/35309902-a22d3ed2-00e9-11e8-9928-e394b9e3d632.png">

### by the way,  ReferenceConfig#setInterface , at line 476
it's no need to cast null to String
<img width="903" alt="2" src="https://user-images.githubusercontent.com/6971152/35309908-b09e4a92-00e9-11e8-9725-8e6ff8071370.png">

@Override
        protected void finalize() throws Throwable {
            super.finalize();
            if (!ReferenceConfig.this.destroyed) {
                logger.warn("ReferenceConfig(" + url + ") is not DESTROYED when FINALIZE");
                /* don't destroy for now
                try {
                    ReferenceConfig.this.destroy();
                } catch (Throwable t) {
                        logger.warn("Unexpected err when destroy invoker of ReferenceConfig(" + url + ") in finalize method!", t);
                }
                */
            }
        }
    };
    public ReferenceConfig() {
    }
    public ReferenceConfig(Reference reference) {
        appendAnnotation(Reference.class, reference);
    }
    private static void checkAndConvertImplicitConfig(MethodConfig method, Map<String, String> map, Map<Object, Object> attributes) {
        
        if (Boolean.FALSE.equals(method.isReturn()) && (method.getOnreturn() != null || method.getOnthrow() != null)) {
            throw new IllegalStateException("method config error : return attribute must be set true when onreturn or onthrow has been setted.");
        }
        
        String onReturnMethodKey = StaticContext.getKey(map, method.getName(), Constants.ON_RETURN_METHOD_KEY);
        Object onReturnMethod = attributes.get(onReturnMethodKey);
        if (onReturnMethod != null && onReturnMethod instanceof String) {
            attributes.put(onReturnMethodKey, getMethodByName(method.getOnreturn().getClass(), onReturnMethod.toString()));