Вы можете легко собрать java 1.6, как указывал инструментарий. Однако вам нужно убедиться, что вы случайно не получили доступ ни к каким методам, которых нет в java 6. Это вызовет исключение времени выполнения в вашем рабочем коде.
Если вы используете maven, вы можете использовать плагин maven-inspecer-plugin, который гарантирует, что никакие классы или вызовы java 1.7 не проникнут в ваш код, созданный для 1.6.
Примером может быть изменение с Java 1.4 на 1.5. Я строил с 1,5 с целью 1,4, и я случайно использовал:
new BigDecimal(5);
Это хорошо скомпилировано и работает нормально для меня. Но поскольку клиент все еще использовал 1.4, это не удалось. Потому что этот конструктор не существует в 1.4. Был введен в 1.5.
Другим решением было бы создать пару jar-файлов, один с новым nio-компонентом, другой со старым, и определить во время установки, запускал ли пользователь java 1.7. Если это так, добавьте jar, содержащий соответствующую реализацию.