JPEXS Free Flash Decompiler
Java Lex Pascal NSIS JavaScript ActionScript Other
Clone or download
Latest commit bf2a413 May 24, 2018
Permalink
Failed to load latest commit information.
.idea Introduce end-of-line normalization Jul 23, 2016
antlib JXar updated to latest version - Mac installer fix Sep 28, 2016
examples removed some unnecessary parameters + small fixes Oct 21, 2015
graphics installer logo fix Jan 3, 2016
lib #1456 jsyntaxpane - updated for java 9+ - fixed undomanager Apr 22, 2018
libsrc #1456 jsyntaxpane - updated for java 9+ - fixed undomanager Apr 22, 2018
nbproject Checking new versions on Github Jan 16, 2018
nsis_locales Issue 1449 - Turkish translation by Osman ÖZ Apr 1, 2018
nsis_plugins Issue #1139,#930 Windows Installer: Correct ActiveX download link, Do… Jan 31, 2016
resources -Djna.nosys=true Aug 29, 2015
src/com Turkish locale toLowerCase I problem fix (causing not loading main wi… Apr 1, 2018
test/com/jpexs/decompiler/flash/gui AS2 class detector - checking classes only in DoInitAction tags Jan 27, 2018
testlib Large ant script refactoring - moving ant libs to special dir, moving… May 11, 2015
travis Nightly build release info generation updated when Unreleased section… Jan 18, 2018
.gitattributes php is text type Jan 15, 2018
.gitignore #1331: plugin to change the bitmap fill Jan 4, 2017
.travis.yml travis.yml update Jan 13, 2018
CHANGELOG.md Update CHANGELOG.md May 24, 2018
CONTRIBUTING.md information about translations Feb 12, 2018
README.md turkish translator [skipci] Apr 1, 2018
TRANSLATIONS.md TRANSLATIONS.md updated [skipci] Apr 1, 2018
build.properties Links to free-decompiler.com changed to GitHub project jindrapetrik/j… Jan 16, 2018
build.xml new version release fix Jan 17, 2018
buildconfig.xml trunk contents moved to root May 10, 2014
ffdec-findbugs-config.fbp avoid throwing EmptyStackExceptions in as2 deobfuscation Aug 26, 2015
git_eol_normalization.bat Normalize all the line endings Aug 14, 2016
git_eol_normalization.sh Saving files before refreshing line endings Sep 18, 2016
iggy-extract.bat Saving files before refreshing line endings Nov 27, 2016
installer.iss Links to free-decompiler.com changed to GitHub project jindrapetrik/j… Jan 16, 2018
installer.nsi Issue 1449 - Turkish translation by Osman ÖZ Apr 1, 2018
license.txt trunk contents moved to root May 10, 2014
manifest.mf Introduce end-of-line normalization Jul 23, 2016
nbbuild.xml Introduce end-of-line normalization Jul 23, 2016

README.md

JPEXS Free Flash Decompiler

Opensource flash SWF decompiler and editor. Extract resources, convert SWF to FLA, edit ActionScript, replace images, sounds, texts or fonts. Various output formats available. Works with Java on Windows, Linux or MacOS.

Application description and features

For information about using the software, list of features, etc., visit FFDec Wiki.

Free-Decompiler.com website

In the past (before 2018), we were using free-decompiler.com domain as HomePage, GitHub for source code, now we moved all information to Github.

Download application

For downloading the app, see latest release. Older versions and nightly builds are availabe on releases section

How to install

See installation section of wiki

Source code

How to get source

You can make local copy of the sources with the following command:

git clone https://github.com/jindrapetrik/jpexs-decompiler.git

Branches

Git source control manager supports multiple code branches. We use two main branches.

  • master - for released "stable" versions
  • dev - for newest changes from developers - "nightly" version is released from this branch

You can switch to dev branch with following git command:

git checkout dev

GIT recommended

It is recommended to have GIT commandline executables installed. Building script uses GIT to include revision number in to the binary. (For Windows, you must enable Git in windows commandline during installation.)

Netbeans project

Source code contains Netbeans Project so you can open it in Netbeans IDE. Then you can use standard actions like Run, Build,Debug, Clean and Build in the IDE. Other specific tasks can be executed via menu on build.xml (see Ant part)

Ant

If you do not have Netbeans, you can build source code also with Apache Ant. After installing Ant it is good to put it into your PATH variable. Open up commandline and navigate to sources directory. To run application, execute task "run" by entering this command:

ant run

To only build, execute build task:

ant build

For creating EXE, Installer and ZIP version, there exist Ant tasks "exe","installer","release". These tasks require additional software installed:

  • launch4j (3.5 or newer) - creates windows executable
  • NSIS (Nullsoft Scriptable Install System) (3.0b3 or newer) - creates installer

You must configure installation path of these tools in tools.properties file, which could look like this for windows:

nsis.path = c:\\program files (x86)\\NSIS
launch4j.path = c:\\program files (x86)\\launch4j

Building libraries

There are few libraries which need to be built too. These libraries are placed in "libsrc" directory.

  • FFDec_lib - core of decompilation, SWF parsing, exporting This library is built automatically with main project, but can be build also separately with its own Ant script.
  • jpacker - used for compression of JavaScript Canvas scripts (Netbeans/Ant project)
  • jpproxy - proxy part of FFDec (Netbeans/Ant project)
  • jsyntaxpane - code editor (Netbeans/Apache Maven project)
  • LZMA - used for SWF compression (Netbeans/Ant project)
  • nellymoser - used for Nelly Moser sounds decoding (Netbeans/Ant project)
  • Swf2Exe - Stub for "Save to EXE" feature (Delphi 7 Project)
  • ttf - used for TTF font export (Netbeans/Ant project)
  • gnujpdf - used for PDF export (Netbeans/Ant project)

Change log

All notable changes are listed in the file CHANGELOG.md

Deployment

Nightly builds

When a commit is pushed/merged into dev branch, new prerelease version is created automatically by Travis CI, these prerelease versions are called nightly builds. On releasing new nightly build, previous nightly build is removed.

Stable versions

New stable version is created automatically by Travis CI when marking a revision in master branch with a tag in format versionxxx.

Contributing

Please read CONTRIBUTING.md for details on our code of conduct, and the process for submitting pull requests to us.

Versioning

Versions are in format x.y.z, for example 9.1.2. For the versions available, see the tags on this repository.

Nightly builds have additional suffix _nightlyN where N is number which increments with every (automatic) nightly releleas and does not depend on the x.y.z numbers. (This means nightly number is NOT reseted to 0 when releasing stable) Older nightly builds are NOT available through git tags.

Authors

The decompiler was originally written by Jindra Petřík also known as JPEXS. The application was made in Czech republic.

Developers

  • JPEXS - leader, development of the decompiler, website main admin, github account admin, organization
  • honfika - development of the decompiler
  • Paolo Cancedda - former developer
  • ...other pushers on GitHub or Google Code

Translators

  • Jaume Badiella Aguilera - catalan translation
  • Capasha - swedish translation
  • 王晨旭 (Chenxu Wang) - chinese translation
  • focus - russian translation
  • honfika - hungarian translation
  • kalip - italian translation
  • Krock - german translation
  • Laurent LOUVET - french translation
  • MaGiC - portugese translation
  • martinkoza - polish translation
  • Osman ÖZ - turkish translation
  • pepka - ukrainian and dutch translation
  • poxyran - spanish translation
  • realmaster42 - portugese-brasil translation
  • Rtsjx - chinese translation

Contact

Issue Tracker

For bug reporting and/or feature requests, our own Issue tracker exists : https://www.free-decompiler.com/flash/issues, but as of 2018/01, our support is very limited.

Email contact

Please contact us via Issue Tracker (see above)

In case the tracker or free-decompiler.com domain is down, emergency contact to JPEXS developer is jindra.petrik@gmail.com.

Licenses + Acknowledgments

Application

FFDec Application is licensed with GNU GPL v3, see the license.txt. It uses modified code of these libraries:

And links also these libraries:

Application uses also some icons of the Silk icons pack, Silk companion 1 and FatCow icons pack.

Library

FFDec Library is licensed with GNU LGPL v3, see license.txt for details. It uses modified code of these libraries:

  • sfntly (WOFF font export) - Apache License 2.0
  • JLayer (Decoding MP3) - LGPL
  • UAB "DKD" NellyMoser ASAO codec (Decoding Nelly Moser sound format) - LGPL
  • Animated GIF Writer (Frames to GIF export) - Creative Commons Attribution 3.0 Unported
  • Animated GIF Encoder (Frames to GIF export)

And links also these libraries: