code: private static MavenDependency newInstance(final MavenCoordinate coordinate, final ScopeType scope,
          final boolean optional, final MavenDependencyExclusion... exclusions) {
          assert coordinate != null : "coordinate must be specified";
          assert exclusions != null : "exclusions must be specified";
          try {
              return ctor.newInstance(coordinate, scope, optional, exclusions);
          } catch (final Exception e) {
              throw new RuntimeException("Could not create new " + MavenDependency.class.getSimpleName() + "instance", e);
          }
      }
docs: Creates a new {@link MavenDependency} instance
  
  @param coordinate A coordinate of the new {@link MavenDependency} instance.
  @param scope A scope of the new {@link MavenDependency} instance. Default will be {@link ScopeType#COMPILE}.
  @param optional Whether or not this {@link MavenDependency} has been marked as optional; defaults to <code>false</code>.
  @param exclusions Exclusions of the new {@link MavenDependency} instance.
  @return The new {@link MavenDependency} instance.