  Modern software development extensively depends on existing libraries written
by other developer teams from the same or a different organization. When a
developer executes the software, the execution trace may go across the
boundaries of multiple software products and create cross-project failures
(CPFs). Existing studies show that a stand-alone executable failure report may
enable the most effective communication, but creating such a report is often
challenging due to the complicated files and dependencies interactions in the
software ecosystems. In this paper, to solve the CPF report trilemma, we
developed PExReport, which automatically creates stand-alone executable CPF
reports. PExReport leverages build tools to prune source code and dependencies,
and further analyzes the build process to create a pruned build environment for
reproducing the CPF. We performed an evaluation on 74 software project issues
with 198 CPFs, and the evaluation results show that PExReport can create
executable CPF reports for 184 out of 198 test failures in our dataset, with an
average reduction of 72.97% on source classes and the classes in internal JARs.
