private void tryAddExtraComponent(ApplicationBuilder<?, ?> result, ClassLoader classLoader, String component) throws MojoExecutionException {
        try {
            final Class<?> uncasted = classLoader.loadClass(component);

            if (InjectBundle.class.isAssignableFrom(uncasted)) {
                @SuppressWarnings("unchecked")
                final Class<? extends InjectBundle> casted
                    = (Class<? extends InjectBundle>) uncasted;
                result.withBundle(casted);
            } else {
                result.withComponent(uncasted);
            }

        } catch (final ClassNotFoundException ex) {
            throw new MojoExecutionException(
                SPECIFIED_CLASS + "'" + component + "' could not be "
                + "found on class path. Has the dependency been "
                + "configured properly?", ex
            );
        }
    }
Returns if the specified file is non-null, exists and is readable. If,
not, {@code false} is returned and an appropriate message is shown in the
console.

@param file the config file to check
@return {@code true} if available, else {@code false}
build-parent/maven-plugin/src/main/java/com/speedment/maven/abstractmojo/AbstractSpeedmentMojo.java