ABSTRACT
Many large-scale Java empirical studies require not only source code but also resulting binaries such as JAR files. Pre-compiled datasets quickly become obsolete, and the creation of a custom corpus for every study is tedious. We present a prototype of JaMaBuild, a tool and a framework for mass building of Java projects from source. Given a list of projects and optional settings, it downloads the projects, filters them by user-definable criteria, builds them using Maven or Gradle, and collects outputs such as JAR files and build logs. Our tool can also be used for local build breakage studies.
- Jens Dietrich, Henrik Schole, Li Sui, and Ewan Tempero. 2017. XCorpus–an executable corpus of Java programs. J. Obj. Tech., 16, 4 (2017), 1:1–24. Google Scholar
- Pedro Martins, Rohan Achar, and Cristina V. Lopes. 2018. 50K-C: A Dataset of Compilable, and Compiled, Java Projects. In Proceedings of MSR 2018. ACM, 1–5. isbn:978-1-4503-5716-6 https://doi.org/10.1145/3196398.3196450 Google ScholarDigital Library
- Jens Palsberg and Cristina V. Lopes. 2018. NJR: A Normalized Java Resource. In Companion Proceedings for the ISSTA/ECOOP 2018 Workshops. ACM, 100–106. isbn:978-1-4503-5939-9 https://doi.org/10.1145/3236454.3236501 Google ScholarDigital Library
- Ricardo Terra, Luis Fernando Miranda, Marco Tulio Valente, and Roberto S. Bigonha. 2013. Qualitas.class Corpus: A Compiled Version of the Qualitas Corpus. SIGSOFT Softw. Eng. Notes, 38, 5 (2013), 1–4. issn:0163-5948 https://doi.org/10.1145/2507288.2507314 Google ScholarDigital Library
Index Terms
- JaMaBuild: Mass Building of Java Projects
Recommendations
Evaluating the Java Native Interface JNI: Leveraging Existing Native Code, Libraries and Threads to a Running Java Virtual Machine
This article aims to explore JNI features and to discover fundamental operations of the Java programming language, such as arrays, objects, classes, threads and exception handling, and to illustrate these by using various algorithms and code samples. ...
Building Java program analysis tools using Javana
OOPSLA '06: Companion to the 21st ACM SIGPLAN symposium on Object-oriented programming systems, languages, and applicationsJavana is a tool for creating customized Java program analysis tools. It comes with an easy-to-use instrumentation framework that enables programmers to develop profiling tools that crosscut the Java application, the Java Virtual Machine (JVM) and the ...
Evaluating the Java Native Interface JNI: Data Types and Strings
This article describes how the java native interface JNI is a powerful feature of the java platform that started to draw attention in the latter years as an efficient programming framework for building and delivering innovative technological ...
Comments