T. J. Watson Libraries for Analysis

软件类型 开源软件
许可协议(License) 我也不知道,您猜猜看?
开发语言 Java
操作系统 跨平台
组织|公司|个人(Org|company|person) Ibm
主页(Home page)
项目名称(Project Name)
最新版本(Latest Version) 1.5.7
最后更新日期(Latest Up time) 2021-06
文件大小(File Size) POM 3.55 KB | JAR 1036.19 KB
版本号(Version) 所在仓库(Repository) POM文件大小 JAR文件大小 发布日期(Date)
1.5.7 Central 3.55 KB 1036.19 KB 2021-06
1.5.6 Central 2.91 KB 1036.11 KB 2021-02
1.5.5 Central 2.91 KB 1035.65 KB 2020-04
1.5.4 Central 1.07 KB 1055.76 KB 2019-09
1.5.3 Central 1.07 KB 1056.06 KB 2019-05
1.5.2 Central 5.32 KB 1597.67 KB 2019-02
1.5.1 Central 5.32 KB 1598.76 KB 2019-01
1.5.0 Central 5.32 KB 1599.76 KB 2018-08
1.4.3 Central 4.04 KB 1547.84 KB 2017-08
1.4.2 Central 4.04 KB 1546.00 KB 2017-04
1.4.1 Central 4.04 KB 1546.44 KB 2017-03
1.4.0 Central 4.04 KB 1545.47 KB 2017-03
1.3.9 Central 3.49 KB 1539.64 KB 2016-05
1.3.8 Central 3.49 KB 1538.14 KB 2015-10
1.3.7 Central 3.49 KB 1536.40 KB 2015-05

[WALA logo]WALA logo

[GitHub Actions status]GitHub Actions status 1 [Build Status]Build Status 1 [Join the chat at]Join the chat at https_gitter.im_WALAHelp_Lobby_Join the chat at https_gitter.im_WALAHelp_Lobby

The T. J. Watson Libraries for Analysis (WALA) provide static analysis capabilities for Java bytecode and related languages and for JavaScript. The system is licensed under the Eclipse Public License, which has been approved by the OSI (Open Source Initiative) as a fully certified open source license. The initial WALA infrastructure was independently developed as part of the DOMO research project at the IBM T.J. Watson Research Center. In 2006, IBM donated the software to the community.

For recent updates on WALA, join the mailing list.

Core WALA Features

WALA features include:

  • Java type system and class hierarchy analysis
  • Source language framework supporting Java and JavaScript
  • Interprocedural dataflow analysis (RHS solver)
  • Context-sensitive tabulation-based slicer
  • Pointer analysis and call graph construction
  • SSA-based register-transfer language IR
  • General framework for iterative dataflow
  • General analysis utilities and data structures
  • A bytecode instrumentation library (Shrike)

Getting Started

The fastest way to get started with WALA is to use the packages in Maven Central, as noted here. See the WALA-start repo for a Gradle-based example. We are actively re-organizing the deeper wiki technical documentation. In the meantime, you can check out tutorial slides to get an overview of WALA:

You can also watch screencasts of the WALA JavaScript tutorial here.

Finally, for now, to search the wiki documentation, we recommend a site-specific search on Google, e.g., a search for "call graph".


We're hosting documentation for WALA on the GitHub wiki. We've chosen a wiki format just so that you can contribute. Don't be shy!

The WALA publications department is populating this wiki with technical documentation on a demand-driven basis, driven by questions posted to the wala-wala mailing list and also Gitter. We recommend this page for searching the mailing list archives.

Currently, we have the JavaDoc documentation for the WALA code being updated continuously. If you think a particular file deserves better javadoc, please open a feature request.

Getting Help

To get help with WALA, please either email the mailing list, ask a question on Gitter, or open an issue.

Building from Source

WALA uses Gradle as its build system. If you intend to modify or build WALA yourself, then see the Gradle-specific README for more instructions and helpful tips. You may also find pom.xml configuration files for Maven builds, but Maven is no longer well supported; use Gradle if at all possible.

WALA Tools in JavaScript

Recently, we have been expanding the set of WALA tools implemented in JavaScript. We have released a normalizer and some basic program analyses for JavaScript in the JS_WALA GitHub repository. We have also made available jsdelta and WALA Delta, delta debuggers for JavaScript-processing tools. Please see the linked GitHub repositories for further details on these tools.

WALA-Based Tools

Several groups have built open-source tools that enhance or build on WALA that may be useful to other WALA users. For details, see the Wala-based tools page.