I have a Firefox extension. When I change the source code, every time I have to create the zip file including the source code and then make it as a .xpi file. Can I avoid this making *.xpi file steps?
Do I need to create an .xpi file to test my Firefox extension?
1.7k Views Asked by lasantha dharmasiri At
2
There are 2 best solutions below
0
Santosh
On
With WebExtensions, you don't need to create the .xpi file. You can directly go to about:debugging in the address bar and load your temporary add-on file. You can also click on debug to debug your webExtension. Have a look at this for more information on loading your first firefox add-on.
Related Questions in FIREFOX-ADDON
- Firefox extension background script terminated preemptively
- Can be their an extension to save pages in as offline in the browser itself?
- I'm building addon for firefox user can take screenshot, but browser.runtime.sendMessage returns undefined
- Detecting how much 'White' color there is, on an embedded video on a webpage
- How to programatically fast forward video on a website
- Convert code from manifest v2 to v3 chrome extension
- How to request host_permissions at install time with Manifest V3?
- How to store fetch headers in javacript from website I don't own?
- Firefox debugger server changes my search bar coloring
- How can the omnibox suggestions be styled in Firefox?
- How do I fix the following issues with my port of a manifest v2 browser extension to manifest v3?
- How Can I Edit the Body of an API Request With a Firefox Addon
- HTMLButtonElement.click() in content script doesn't work in second screen
- Error sending message to background script: Error: Could not establish connection. Receiving end does not exist (FireFox Extension Test)
- crossOrigin blocks requests for translate.google.com
Related Questions in FIREFOX-ADDON-SDK
- Cannot access tab DOM using React + Firefox extension
- How can I upload an image to a site with a userscript/extension?
- Uncaught (in promise) Error for a couple of cycles then stopping
- How to use Selenium to install Firefox browser add-on?
- How to write/create a local text file inside of a firefox profile through a firefox extension?
- how do I detect if the tab has changed or refreshed in a firefox addon
- How to reuse a javascript function between content script and service worker in MV2/MV3-compatible way?
- Firefox extension proxy
- Why doesn't the content script open a new window using the windows.create method of the JavaScript APIs for WebExtensions to develop Firefox add-ons?
- Firefox extension share async function with return gives => Error: Permission denied to access property "then"
- how set badge text after loaded site on my extensions firefox
- Rerun Firefox addon's script on URL dynamic change
- How to sleep in a firefox extension (old and native JS methods not working)?
- insert content from firefox webextension
- loading simple iframe from extension firefox
Related Questions in FIREFOX-ADDON-WEBEXTENSIONS
- Firefox extension background script terminated preemptively
- I'm building addon for firefox user can take screenshot, but browser.runtime.sendMessage returns undefined
- My service worker is not connecting to my content script in my Chrome extension. How do I fix this?
- How do I fix the following issues with my port of a manifest v2 browser extension to manifest v3?
- Delete all cookies in the browser using js?
- Changing src image with Firefox extension
- How to open a deeplink without creating a new tab or window in a web extension
- firefox extension, read background script variable from popup?
- WebExtensions : Can you access a JSON object that was fetched by the webpage
- browser.declarativeNetRequest property is undefined despite processing static DNR redirects
- Access Chrome APIs in a web application built with ReactJS
- WebExtension does not start content script on Android (geckoview)
- webRequest API not working with manifest v3 extension
- browser.webRequest.onBeforeRequest is not being triggered in my firefox extension
- How to cache storage in web extensions?
Related Questions in FIREFOX-ADDON-BOOTSTRAP
- maxVersion of Firefox Add-on is not enforced?
- Firefox 52 "New File" changes and error
- Do I need to create an .xpi file to test my Firefox extension?
- Is using a while loop a good waiting strategy in a Firefox Restartless Extension?
- Access nsIDOMChromeWindow from Services.jsm or similar, for XUL to Add-ons-SDK migration
- Open Tab in a Specific Position by Firefox extension
- Calling add-on from web page in new multiprocess Firefox
- Show blank page in new private browsing window of Firefox
- Firefox Addon: bootstrap.js mit sdk/page-mod for versions < 38.0
- Firefox extension: about PopupNotifications.jsm in
- Importing Javascript module in Firefox extension
- Using loadFrameScript, how can inject file before the page's script execution?
- Download and open Firefox
Related Questions in FIREFOX-ADDON-OVERLAY
- How to force Firefox 56 to reload a legacy add-on?
- How do I migrate a legacy XPCOM extension to WebExtensions?
- How to develop legacy Firefox add-ons in the future?
- maxVersion of Firefox Add-on is not enforced?
- Do I need to create an .xpi file to test my Firefox extension?
- Open a new tab with "hello world" on it
- Why does my Firefox add-on not work after updating Firefox to version 50
- In Firefox 50, what is the appropriate chrome:// URL to overlay and extend DevTools main window?
- How to read a local file in an add-on for Firefox version 45+
- How to get the active tab URL in an e10s add-on
- Open Tab in a Specific Position by Firefox extension
- Download and open Firefox
- How to iterate over files in a directory within an extractionless add-on's .xpi file
- Use HTTP-on-modify-request to redirect URL
Trending Questions
- UIImageView Frame Doesn't Reflect Constraints
- Is it possible to use adb commands to click on a view by finding its ID?
- How to create a new web character symbol recognizable by html/javascript?
- Why isn't my CSS3 animation smooth in Google Chrome (but very smooth on other browsers)?
- Heap Gives Page Fault
- Connect ffmpeg to Visual Studio 2008
- Both Object- and ValueAnimator jumps when Duration is set above API LvL 24
- How to avoid default initialization of objects in std::vector?
- second argument of the command line arguments in a format other than char** argv or char* argv[]
- How to improve efficiency of algorithm which generates next lexicographic permutation?
- Navigating to the another actvity app getting crash in android
- How to read the particular message format in android and store in sqlite database?
- Resetting inventory status after order is cancelled
- Efficiently compute powers of X in SSE/AVX
- Insert into an external database using ajax and php : POST 500 (Internal Server Error)
Popular # Hahtags
Popular Questions
- How do I undo the most recent local commits in Git?
- How can I remove a specific item from an array in JavaScript?
- How do I delete a Git branch locally and remotely?
- Find all files containing a specific text (string) on Linux?
- How do I revert a Git repository to a previous commit?
- How do I create an HTML button that acts like a link?
- How do I check out a remote Git branch?
- How do I force "git pull" to overwrite local files?
- How do I list all files of a directory?
- How to check whether a string contains a substring in JavaScript?
- How do I redirect to another webpage?
- How can I iterate over rows in a Pandas DataFrame?
- How do I convert a String to an int in Java?
- Does Python have a string 'contains' substring method?
- How do I check if a string contains a specific word?
For all types of Firefox extensions you can test your extension without the need to create an .xpi file for each iteration.
WebExtensions
WebExtensions can be directly loaded as a temporary extension from the directory containing the manifest.json file. This is done from
about:debugging.You can use
web-ext runto test your extension in a temporary profile.They can be installed as an unpacked extension (all files not in a .xpi file). In addition, you can use a Firefox extension proxy file to have your extension files located in any directory you choose, not just under the profile's extensions directory.
Add-on SDK extensions
jpm runto test your extension without directly dealing with the .xpi file.jpm xpi. However, as an .xpi, they can be loaded as temporary extensions.jpn xpi, then manually unpacking the extension.Bootstrap/Restartless extensions
Bootstrap/Restartless extensions can be directly loaded as a temporary extension from the directory containing the chrome.manifest and install.rdf files. This is done from
about:debugging.They can be installed as an unpacked extension (all files not in a .xpi file). In addition, you can use a Firefox extension proxy file to have your extension files located in any directory you choose, not just under the profile's extensions directory.
Overlay/Legacy/XUL based extensions
Overlay/Legacy/XUL based extensions can not be loaded as a temporary extension.
They can be installed as an unpacked extension (all files not in a .xpi file). In addition, you can use a Firefox extension proxy file to have your extension files located in any directory you choose, not just under the profile's extensions directory.
Additional information
I would suggest you read Installing add-ons for development and Installing a Temporary Add-on which cover these issues in more detail.