junit-servers-core/src/main/java/com/github/mjeanroy/junit/servers/commons/ReflectionUtils.java
public static void setter(Object instance, Field field, Object value) {
		boolean forceAccess = false;

		try {
			if (!field.isAccessible()) {
				forceAccess = true;
				field.setAccessible(true);
			}

			field.set(instance, value);
		}
		catch (IllegalAccessException ex) {
			throw new ReflectionException(ex);
		}
		finally {
			if (forceAccess) {
				field.setAccessible(false);
			}
		}
	}
public static void setter(Object instance, Field field, Object value) {
		boolean forceAccess = false;

		try {
			if (!field.isAccessible()) {
				forceAccess = true;
				field.setAccessible(true);
			}

			field.set(instance, value);
		}
		catch (IllegalAccessException ex) {
			throw new ReflectionException(ex);
		}
		finally {
			if (forceAccess) {
				field.setAccessible(false);
			}
		}
	}
Set value of given field on given instance.

@param instance Instance.
@param field Field.
@param value Field value.
@throws ReflectionException if set operation is not permitted.