This has black box problem has been seen in the following situations.
The original IP core is instantiated as a black box in the packaged project.
If the output targets for the IP core are generated with the OOC option selected (the default option that creates a DCP for the IP core) then the instantiation template for the IP core will include blackbox attributes.
This is not an issue for the original project because the OOC module for the IP core is picked up and used in Implementation.
However, if the project is packaged and used in a Block Design (BD) then the OOC module is ignored (DCPs within a BD are not supported).
Because of the black box attributes, the HDL file(s) delivered for IP core will be ignored by synthesis and because the OOC is not used, Implementation fails due to the missing module.
To correct this problem, the black box attributes should be deleted (not just commented out) from the instantiating HDL before the project is packaged in IP Packager.
The packaged IP project does not include the generated HDL file under the synth directory for the "IP File Group"
When packaging a project containing an IP core a user can select one of the following two options for IP cores within the project
The "Include XCI" option should be selected.
The .xci file for the IP core will be included in the packaged IP and will reference all other files required for the IP core.
Note: It has been discovered that if the "Include generated files" option is used, not all file for an IP core (Specifically files in the IP/synth directory) are included in the IP File Group.
After re-packaging and re-generating the user IP, remove the original IP core from the Vivado project and add a new modified version.
To ensure that this has worked, go to the Sources panel in the Vivado project and expand the IP source.
All sources should be referenced and none should contain a question mark.
Within a block diagram, a user can check to see if they have the correct version of a packaged IP project by right clicking on the IP instance in the BD and selecting "Edit in IP Packager".