I've tried building ipf 3.4.1 from source so that I can modify Iti55Producer.  Unfortunately, I have had no luck getting a successful build.  The groovy eclipse packages that are dependencies for that project don't exist anywhere anymore.
I've switched to 3.7, and am now unable to get a successful build of ipf-commons-ihe-hl7v2, with many undefined issues.  Does anyone know what I need to do to resolve these?  I'm locked into Java 8, unfortunately, so can't progress beyond ipf 3.7.
COMPILATION ERROR : 
-------------------------------------------------------------
Failure executing groovy-eclipse compiler:
----------
1. ERROR in C:\Users\jasonc\Documents\NetBeansProjects\ipf37\branches\ipf-3.7\commons\ihe\hl7v2\src\main\java\org\openehealth\ipf\commons\ihe\hl7v2\audit\iti31\Iti31AuditStrategy.java (at line 104)
	.getMessage();
	 ^^^^^^^^^^
The method getMessage() is undefined for the type PatientRecordEventBuilder<PatientRecordEventBuilder<T'>>
----------
----------
2. ERROR in C:\Users\jasonc\Documents\NetBeansProjects\ipf37\branches\ipf-3.7\commons\ihe\hl7v2\src\main\java\org\openehealth\ipf\commons\ihe\hl7v2\audit\iti8\Iti8AuditStrategy.java (at line 81)
	.getMessage();
	 ^^^^^^^^^^
The method getMessage() is undefined for the type PatientRecordEventBuilder<PatientRecordEventBuilder<T'>>
----------
----------
3. ERROR in C:\Users\jasonc\Documents\NetBeansProjects\ipf37\branches\ipf-3.7\commons\ihe\hl7v2\src\main\java\org\openehealth\ipf\commons\ihe\hl7v2\audit\iti64\Iti64AuditStrategy.java (at line 82)
	.getMessages();
	 ^^^^^^^^^^^
The method getMessages() is undefined for the type IHEPatientRecordChangeLinkBuilder
----------
----------
4. ERROR in C:\Users\jasonc\Documents\NetBeansProjects\ipf37\branches\ipf-3.7\commons\ihe\hl7v2\src\main\java\org\openehealth\ipf\commons\ihe\hl7v2\audit\pdqcore\PdqAuditStrategy.java (at line 73)
	.getMessages();
	 ^^^^^^^^^^^
The method getMessages() is undefined for the type QueryInformationBuilder
----------
----------
5. ERROR in C:\Users\jasonc\Documents\NetBeansProjects\ipf37\branches\ipf-3.7\commons\ihe\hl7v2\src\main\java\org\openehealth\ipf\commons\ihe\hl7v2\audit\iti64\IHEPatientRecordChangeLinkBuilder.java (at line 64)
	delegate.addPatient(patientId, null,
	^^^^^^^^
delegate cannot be resolved
----------
6. ERROR in C:\Users\jasonc\Documents\NetBeansProjects\ipf37\branches\ipf-3.7\commons\ihe\hl7v2\src\main\java\org\openehealth\ipf\commons\ihe\hl7v2\audit\iti64\IHEPatientRecordChangeLinkBuilder.java (at line 66)
	getTypeValuePair("MSH-10", auditDataset.getMessageControlId(), getAuditContext().getAuditValueIfMissing()),
	^^^^^^^^^^^^^^^^
The method getTypeValuePair(String, String, String) is undefined for the type IHEPatientRecordChangeLinkBuilder<T>
----------
7. ERROR in C:\Users\jasonc\Documents\NetBeansProjects\ipf37\branches\ipf-3.7\commons\ihe\hl7v2\src\main\java\org\openehealth\ipf\commons\ihe\hl7v2\audit\iti64\IHEPatientRecordChangeLinkBuilder.java (at line 67)
	getTypeValuePair(URN_IHE_ITI_XPID_2017_PATIENT_IDENTIFIER_TYPE, "localPatientId")
	^^^^^^^^^^^^^^^^
The method getTypeValuePair(String, String) is undefined for the type IHEPatientRecordChangeLinkBuilder<T>
----------
8. ERROR in C:\Users\jasonc\Documents\NetBeansProjects\ipf37\branches\ipf-3.7\commons\ihe\hl7v2\src\main\java\org\openehealth\ipf\commons\ihe\hl7v2\audit\iti64\IHEPatientRecordChangeLinkBuilder.java (at line 79)
	delegate.addPatient(patientId, null,
	^^^^^^^^
delegate cannot be resolved
----------
9. ERROR in C:\Users\jasonc\Documents\NetBeansProjects\ipf37\branches\ipf-3.7\commons\ihe\hl7v2\src\main\java\org\openehealth\ipf\commons\ihe\hl7v2\audit\iti64\IHEPatientRecordChangeLinkBuilder.java (at line 81)
	getTypeValuePair("MSH-10", auditDataset.getMessageControlId(), getAuditContext().getAuditValueIfMissing()),
	^^^^^^^^^^^^^^^^
The method getTypeValuePair(String, String, String) is undefined for the type IHEPatientRecordChangeLinkBuilder<T>
----------
10. ERROR in C:\Users\jasonc\Documents\NetBeansProjects\ipf37\branches\ipf-3.7\commons\ihe\hl7v2\src\main\java\org\openehealth\ipf\commons\ihe\hl7v2\audit\iti64\IHEPatientRecordChangeLinkBuilder.java (at line 82)
	getTypeValuePair(URN_IHE_ITI_XPID_2017_PATIENT_IDENTIFIER_TYPE, "subsumedPatientId")
	^^^^^^^^^^^^^^^^
The method getTypeValuePair(String, String) is undefined for the type IHEPatientRecordChangeLinkBuilder<T>
----------
11. ERROR in C:\Users\jasonc\Documents\NetBeansProjects\ipf37\branches\ipf-3.7\commons\ihe\hl7v2\src\main\java\org\openehealth\ipf\commons\ihe\hl7v2\audit\iti64\IHEPatientRecordChangeLinkBuilder.java (at line 91)
	delegate.addPatient(patientId, null,
	^^^^^^^^
delegate cannot be resolved
----------
12. ERROR in C:\Users\jasonc\Documents\NetBeansProjects\ipf37\branches\ipf-3.7\commons\ihe\hl7v2\src\main\java\org\openehealth\ipf\commons\ihe\hl7v2\audit\iti64\IHEPatientRecordChangeLinkBuilder.java (at line 93)
	getTypeValuePair("MSH-10", auditDataset.getMessageControlId(), getAuditContext().getAuditValueIfMissing()),
	^^^^^^^^^^^^^^^^
The method getTypeValuePair(String, String, String) is undefined for the type IHEPatientRecordChangeLinkBuilder<T>
----------
13. ERROR in C:\Users\jasonc\Documents\NetBeansProjects\ipf37\branches\ipf-3.7\commons\ihe\hl7v2\src\main\java\org\openehealth\ipf\commons\ihe\hl7v2\audit\iti64\IHEPatientRecordChangeLinkBuilder.java (at line 94)
	getTypeValuePair(URN_IHE_ITI_XPID_2017_PATIENT_IDENTIFIER_TYPE, "newPatientId")
	^^^^^^^^^^^^^^^^
The method getTypeValuePair(String, String) is undefined for the type IHEPatientRecordChangeLinkBuilder<T>
----------
14. ERROR in C:\Users\jasonc\Documents\NetBeansProjects\ipf37\branches\ipf-3.7\commons\ihe\hl7v2\src\main\java\org\openehealth\ipf\commons\ihe\hl7v2\audit\iti64\IHEPatientRecordChangeLinkBuilder.java (at line 106)
	delegate.addPatient(patientId, null,
	^^^^^^^^
delegate cannot be resolved
----------
15. ERROR in C:\Users\jasonc\Documents\NetBeansProjects\ipf37\branches\ipf-3.7\commons\ihe\hl7v2\src\main\java\org\openehealth\ipf\commons\ihe\hl7v2\audit\iti64\IHEPatientRecordChangeLinkBuilder.java (at line 108)
	getTypeValuePair("MSH-10", auditDataset.getMessageControlId(), getAuditContext().getAuditValueIfMissing()),
	^^^^^^^^^^^^^^^^
The method getTypeValuePair(String, String, String) is undefined for the type IHEPatientRecordChangeLinkBuilder<T>
----------
16. ERROR in C:\Users\jasonc\Documents\NetBeansProjects\ipf37\branches\ipf-3.7\commons\ihe\hl7v2\src\main\java\org\openehealth\ipf\commons\ihe\hl7v2\audit\iti64\IHEPatientRecordChangeLinkBuilder.java (at line 109)
	getTypeValuePair(URN_IHE_ITI_XPID_2017_PATIENT_IDENTIFIER_TYPE, "previousPatientId")
	^^^^^^^^^^^^^^^^
The method getTypeValuePair(String, String) is undefined for the type IHEPatientRecordChangeLinkBuilder<T>
----------
17. ERROR in C:\Users\jasonc\Documents\NetBeansProjects\ipf37\branches\ipf-3.7\commons\ihe\hl7v2\src\main\java\org\openehealth\ipf\commons\ihe\hl7v2\audit\iti64\IHEPatientRecordChangeLinkBuilder.java (at line 122)
	delegate.addParticipantObjectIdentification(
	^^^^^^^^
delegate cannot be resolved
----------
18. ERROR in C:\Users\jasonc\Documents\NetBeansProjects\ipf37\branches\ipf-3.7\commons\ihe\hl7v2\src\main\java\org\openehealth\ipf\commons\ihe\hl7v2\audit\iti64\IHEPatientRecordChangeLinkBuilder.java (at line 137)
	public void validate() {
	            ^^^^^^^^^^
The method validate() of type IHEPatientRecordChangeLinkBuilder<T> must override or implement a supertype method
----------
19. ERROR in C:\Users\jasonc\Documents\NetBeansProjects\ipf37\branches\ipf-3.7\commons\ihe\hl7v2\src\main\java\org\openehealth\ipf\commons\ihe\hl7v2\audit\iti64\IHEPatientRecordChangeLinkBuilder.java (at line 138)
	super.validate();
	      ^^^^^^^^
The method validate() is undefined for the type IHEAuditMessageBuilder<T,PatientRecordBuilder>
----------
----------
20. ERROR in C:\Users\jasonc\Documents\NetBeansProjects\ipf37\branches\ipf-3.7\commons\ihe\hl7v2\src\main\java\org\openehealth\ipf\commons\ihe\hl7v2\audit\iti30\Iti30AuditStrategy.java (at line 76)
	.getMessage();
	 ^^^^^^^^^^
The method getMessage() is undefined for the type PatientRecordEventBuilder<PatientRecordEventBuilder<T'>>
----------
----------
21. ERROR in C:\Users\jasonc\Documents\NetBeansProjects\ipf37\branches\ipf-3.7\commons\ihe\hl7v2\src\main\java\org\openehealth\ipf\commons\ihe\hl7v2\audit\iti9\Iti9AuditStrategy.java (at line 64)
	.getMessages();
	 ^^^^^^^^^^^
The method getMessages() is undefined for the type QueryInformationBuilder
----------
----------
22. ERROR in C:\Users\jasonc\Documents\NetBeansProjects\ipf37\branches\ipf-3.7\commons\ihe\hl7v2\src\main\java\org\openehealth\ipf\commons\ihe\hl7v2\audit\iti10\Iti10AuditStrategy.java (at line 56)
	.getMessages();
	 ^^^^^^^^^^^
The method getMessages() is undefined for the type PatientRecordEventBuilder
----------
22 problems (22 errors)