SourcererJBF: A Java']Java Build Framework For Large-Scale Compilation

被引:1
|
作者
Misu, Md Rakib Hossain [1 ]
Achar, Rohan [1 ]
Lopes, Cristina V. [1 ]
机构
[1] Univ Calif Irvine, Donald Bren Sch Informat & Comp Sci ICS, Irvine, CA 9269 USA
基金
美国国家科学基金会;
关键词
Automated builds; build systems; !text type='Java']Java[!/text; program analysis; BENCHMARK;
D O I
10.1145/3635710
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Researchers and tool developers working on dynamic analysis, software testing, automated program repair, verification, and validation, need large compiled, compilable, and executable code corpora to test their ideas. The publicly available corpora are relatively small, and/or non-compilable, and/or non-executable. Developing a compiled code corpus is a laborious activity demanding significant manual effort and human intervention. To facilitate large-scale program analysis research, we develop SourcererJBF, a Java Build Framework that can automatically build a large Java code corpus without project-specific instructions and human intervention. To generate a compiled code corpus, SourcererJBF creates an offline knowledge base by collecting external dependencies from the project directories and existing build scripts (if available). It constructs indices of those collected external dependencies that enable a fast search for resolving dependencies during the project compilation. As the output of the large-scale compilation, it produces JAigantic, a compilable Java corpus containing compiled projects, their bytecode, dependencies, normalized build script, and build command. We evaluated SourcererJBF's effectiveness, correctness, performance, and scalability in a large collection of Java projects. Our experimental results demonstrate that SourcererJBF is significantly effective and scalable in building large Java code corpus. Besides, it substantiates reasonable performance and correctness similar to projects' existing build systems.
引用
收藏
页数:35
相关论文
共 50 条
  • [1] Large-Scale Dataset of Local Java']Java Software Build Results
    Sulir, Matus
    Bacikova, Michaela
    Madeja, Matej
    Chodarev, Sergej
    Juhar, Jan
    [J]. DATA, 2020, 5 (03) : 1 - 11
  • [2] Large-scale image deblurring in Java']Java
    Wendykier, Piotr
    Nagy, James G.
    [J]. COMPUTATIONAL SCIENCE - ICCS 2008, PT 1, 2008, 5101 : 721 - 730
  • [3] Large-scale characterization of Java']Java streams
    Rosales, Eduardo
    Basso, Matteo
    Rosa, Andrea
    Binder, Walter
    [J]. SOFTWARE-PRACTICE & EXPERIENCE, 2023, 53 (09): : 1763 - 1792
  • [4] Java']Java for large-scale scientific computations?
    Krall, A
    Tomsich, P
    [J]. LARGE-SCALE SCIENTIFIC COMPUTING, 2001, 2179 : 228 - 235
  • [5] APPLICATION OF A JAVA']JAVA-BASED FRAMEWORK TO PARALLEL SIMULATION OF LARGE-SCALE SYSTEMS
    Niewiadomska-Szynkiewicz, Ewa
    Zmuda, Maciej
    Malinowski, Krzysztof
    [J]. INTERNATIONAL JOURNAL OF APPLIED MATHEMATICS AND COMPUTER SCIENCE, 2003, 13 (04) : 537 - 547
  • [6] A formal framework for Java']Java separate compilation
    Ancona, D
    Lagorio, G
    Zucca, E
    [J]. ECOOP 2002 - OBJECT-ORIENTED PROGRAMMING, 2002, 2374 : 609 - 635
  • [7] Java']Java communications for large-scale parallel computing
    Getov, V
    Philippsen, M
    [J]. LARGE-SCALE SCIENTIFIC COMPUTING, 2001, 2179 : 33 - 45
  • [8] APINetworks Java']Java. A Java']Java approach to the efficient treatment of large-scale complex networks
    Munoz-Caro, Camelia
    Nino, Alfonso
    Reyes, Sebastian
    Castillo, Miriam
    [J]. COMPUTER PHYSICS COMMUNICATIONS, 2016, 207 : 549 - 552
  • [9] Large-scale parallel geophysical algorithms in Java']Java: a feasibility study
    Jacob, M
    Philippsen, M
    Karrenbach, M
    [J]. CONCURRENCY-PRACTICE AND EXPERIENCE, 1998, 10 (11-13): : 1143 - 1153
  • [10] A large-scale study on the usage of Java']Java's concurrent programming constructs
    Pinto, Gustavo
    Torres, Weslley
    Fernandes, Benito
    Castor, Fernando
    Barros, Roberto S. M.
    [J]. JOURNAL OF SYSTEMS AND SOFTWARE, 2015, 106 : 59 - 81