Flex Builder 3 - Memory Profile Confusion!
Hello,
I'm currently working on memory leaks in a fairly large application. When I finally tracked down the issue it had to do with using BindUtils's bindProperty method. If I assigned my properties directly and manually updated them, all of the instances were relased when the garbage collector was invoked (all of this through the memory profiler in Flex Builder Pro 3).
I then build out a small little test app that simply created an ArrayCollection then using BindingUtils, bound it to the dataProvider of 20 data grids. I stored the change watches then manually called "unwatch" and finally nulled out the changeWatchers (and even went so far to manually remove the grids and null them out).
What I noticed was when I used bindingutils, the ListCollectionView objects were not released when I used BindingUtils but when I used direct assignment and removed the grids, all the ListCollectionView instances were dumped correctly.
At this point I'm not sure if I'm misinterpeting the results in the memory profiler or not. If I "unwatch" a change watcher and destroy it, should that kill and references to the target object? Any help or advice would be appreciated.
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"
layout="absolute"
initialize="initData()">
<mx:Script>
<![CDATA[
import mx.binding.utils.ChangeWatcher;
import mx.controls.DataGrid;
import mx.binding.utils.BindingUtils;
import mx.controls.Label;
import mx.collections.ArrayCollection;
[Bindable]
public var dataProvider:ArrayCollection;
private var changeWatchers:Array;
private function initData():void
var object1:Object = new Object();
object1["first"] = "John";
object1["middle"] = "Alexander";
object1["last"] = "Smith";
dataProvider = new ArrayCollection();
dataProvider.addItem(object1);
private function createObjects():void
changeWatchers = new Array();
for (var i:int = 0; i < 20; i++)
var newGrid:DataGrid = new DataGrid();
changeWatchers.push(BindingUtils.bindProperty(newGrid, "dataProvider", this, "dataProvider"));
//newGrid.dataProvider = dataProvider;
targetItems.addChild(newGrid);
private function deleteMemory():void
for each (var cw:ChangeWatcher in changeWatchers)
cw.unwatch();
cw = null;
var children:Array = targetItems.getChildren();
for each (var child:DisplayObject in children)
targetItems.removeChild(child);
child = null;
]]>
</mx:Script>
<mx:HBox y="0">
<mx:Button label="Create Grids"
click="createObjects()"/>
<mx:Button label="Delete Grids"
click="deleteMemory()"/>
</mx:HBox>
<mx:VBox id="targetItems"
y="50">
</mx:VBox>
</mx:Application>
I answered my own question.
In the code I was calling "unwatch" and setting the array element to null and I assumed that would cause the instances of ListCollectionView to decrease once the garbage collector was invoked. It wasn't till now that I was playing around with the code and set the array itself to null that it decreased the instances back to 0.
At least I know where some of my memory issues could be coming from in the main application as I use arrays quite a bit!
Similar Messages
-
I created Services.mxml in the tutorial, set it as the
default application file, and dragged the first component onto the
design view screen, a label, when Flex Builder seems to get
sluggish. Jumping out to the task manager revealed javaw.exe
rapidly accumulating memory usage, heading for 300,000 K. I killed
FB before it hung the machine and restarted it.
I was able to replicate it by being in a hurry. I created
another Services2.mxml as an application, and while it was Building
the workspace i tried to drag a Label onto the stage. Twice. The
cursor didn't change, but they eventually they appeared. Checking
the task manager revealed that i had put javaw.exe again in a
tailspin, rapidly accumulating memory usage.I'm also experiencing huge memory leaks from beta 3...after a
couple of builds memory allocation for javaw is around
300MB...hopefully this will get fixed. thanks,
-george -
After installing flash builder 4 neither it nor flex builder 3 has been able to launch swf:s from flex. After hitting run or debug flex gives a prompt saying "Flash Player not Found. Flex builder cannot locate the required version of Flash Player. You might need to install Flash Player 9 or reinstall Flex Builder. Do you want to try to run your application with the current version?". The popup itself happened before installing flash builder 4. But normally I would just hit yes and it would use whatever flashplayer is default.
Now if I click yes it launches command prompt with a path to flex builder 3 installation folder. When running from flash builder 4, same happens except the path is the installation folder for flash builder 4. Flex then starts waiting for connection from debugger and after a while it prompts a timeout message. The command prompts title is ...\workspace\project\bin-debug\filename.swf.
When opening the swf files directly from windows they open fine.
I used the uninstaller software for flash player and then fetched both fp9&10 and reinstalled them. Which didn't help. When launching to browser everything works just fine, the problem occurs only when launching to standalone player. I tried to check registry settings if there would be something wrong, but all the paths for flashplayers seem to be ok.
Is there any other hope to fix this than reinstalling flex builder 3 & flash builder 4 from scratch?You need content debugger FP installed
http://www.adobe.com/support/flashplayer/downloads.html download it from there and install and you should see the problem go away
Download the Windows Flash Player 10 ActiveX control content debugger (for IE) (EXE, 2.03 MB) -
Upgrading Flex Builder 3 Standard to Flash Builder 4 Premium
Hi there,
Purchased Flex Builder 3 Standard back in January. Came to enjoy (and depend on) the memory profiling functions in the beta 2.
Anyhow, Flash Builder 4 has been released, and I see there is no memory profiler in the Standard edition. I see some conflicting information out there regarding upgrades -- some (third party) websites say it's possible to upgrade Flex Builder 3 Standard to Flash Builder 4 Premium. Adobe's website says it's only possible to upgrade Standard -> Standard, and Premium -> Premium.
The costs to upgrade to Premium from Standard would be prohibitive; I'd have to purchase two separate upgrades and the price would go over $US1000. Am I able to upgrade to Premium using my Flex Builder 3 Standard purchase?
Thanks.Hi,
I don't think that "downgrades" from FB3 Pro to FB4 Standard are officially supported. You might be able to negotiate with a Sales Rep to make an exception for you though, for a discounted price on a non-upgrade version of FB4 Standard.
Alternatively, if you have any interest in CS5 Web Premium (or have any Adobe products qualifying for a CS5 upgrade), FB4 Standard is included with that Suite now.
-Chris -
Ever increaing RAM usage of flashPlayer not shown in memory profiler of FlashBuilder
I have a flash application created with Flex in FlashBuilder which uses the Stage3D-API (Away3D-Library is used).
In this flash application 3D-objects are created and added to scene and they are also removed/disposed again, and then they are created/added again.
Performing these scene altering operations the RAM usage of the flashPlayer process (monitored in Windows7-Taskmanager) steadily increases by big amounts (lets say 20MB).
On the other hand the Memory-profiler does not show any such increases at all. Regarding to memory profiler the application still uses bascially the same amount of memory (the line stays flat).
There are some objects marked as loitering, but they donet seem to build-up. And their total amount is (if at all) 0,3MB.
After a while of 3d-scene altering operations (adding, removeing objects) the application/flash-player crashes, most possibly to not being able to allocate more RAM (Taskmanager shows RAM almost completely used up by flashPlayer-process). The application does not exit due to 3d-resource related limits like vertex-buffers, but here are now my questions:
Questions:
a) Are there areas of RAM-usages a (stage-3d) application uses up, which can not be profiled by FlashBuilder?
For exmaple: Is it possible that some objects (maybe stage-3d related) that hold onto some areas of memory/RAM which do not show up in memory profiler?
c) Is the versioning of used components (flashPlayer, FlashBuilder or used Flex-SDK) in an way relevant when memory profiling an application? It it possible that i dont properly see the used memory by my application because i might have old version of involved components?
d) Do you have any other idea what might be the cause here for increased RAM-usage or why it does not show up in memory profiler? I mean at least i expected to see it in memory profiler.
e) Generally i understand that the flashPlayer allocates RAM as it sees fit, and that its not the same amount of memory my application currently uses. But if my application seems not to use/demand any more memory (at least thats what the profiler tells me) i dont understand why flashPlayer allocates more and more memory - even to the point of crashing. Any ideas here?Long shot but...
When I had an issue with Flash Builder 4.6 PC mobile in regards to the java heap problem I discovered myself that my project had content which apparently blew out the FB threshold. In particular my mp3 files (3 units) were of too much high quality (360 kbps), I had to scale down the files to 128 kbps. This is an extreme shame.
I am currently running these threshold tests to see if my mp3s can be of better kbps. I did hack my CONFIG scripts in the sdk folders in the installation location but that did not solve my issue. LESSON LEARNED: FB apparently employs the web logic where reduced files equal better performance. -
Hi,
I am trying to profile my application using the wtk's memory profiler. The apllication that iam trying to load is pretty huge. When i try to do this, the memory profiler (zayit.exe) crashes.
The stack trace is as follows
java.lang.IndexOutOfBoundsException
at java.io.BufferedInputStream.read(BufferedInputStream.java:272)
at java.io.DataInputStream.read(DataInputStream.java:224)
at com.sun.kvem.memorymon.MemoryListener.run(Unknown Source)
Any help would be of great use.
Thanks,
Suresh----------------From Flex Builder
Help---------------------------------------------------
One approach to identifying a memory leak is to first find a
discrete set of steps that you can do over and over again with your
application, where memory usage continues to grow. It is important
to do that set of steps at least once in your application before
taking the initial memory snapshot so that any cached objects or
other instances are included in that snapshot.
Then you perform that set of steps in your application a
particular number of times -- 3, 7, or some other prime number --
and take the second memory snapshot to compare with the initial
snapshot. In the Find Loitering Objects view, you might find
loitering objects that have a multiple of 3 or 7 instances. Those
objects are probably leaked objects. You double-click the classes
to see the stack traces for each of the instances.
Another approach is to repeat the sequence of steps over a
long period of time and wait until the memory usage reaches a
maximum. If it does not increase after that, there is no memory
leak for that set of steps.
check your app following these instructions above. -
Flex Ant SDK giving compile warnings not present in Flex Builder
We have a project when we complie from Flash Builder 4 it compiles as expected with no errors. However when we do an ANT build on a build machine with no Flash Builder installed, the same code (checked out from SVN) and same Flex SDK we have started to get an error: "Error: Access of possibly undefined property labelName through a reference with static type ..."
If I Run As the ant build from inside eclipse it builds fine and no errors (I verified the SDKs are the same). I can "work around" this by using show-actionscript-warnings="false" in the build.xml file, I'd rather not have to do this.
The error labelName property in the component that is referenced in the error is indeed marked public and it is [Bindable]. In fact the component that it says this error is associated with hasn't changed in a couple months.
Some other info that might be of interest on our system that builds the deploy version:
1. Our build box is running mac os x (10.5.6), Processor: 2GHz Intel Core 2 Duo, Memory: 2GB
2. Flex SDK 4.1A
3. Java version 1.5.0_13
Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0_13-b05-237)
JavaHotSpot(TM) Client VM (build 1.5.0_13-119, mixed mode, sharing)
4. Ant -version: Apache Ant version 1.7.0 compiled on February 29 2008
Any ideas as to what could be causing this "phantom" error in our module? How to fix? Hints or other avenues to pursue?
Thanks,
Mike WeilandSo it turns out I need to overlay the latest SDK into the Flash Builder directory completely, not just the files I was messing with before.
In flex builder, go to the directory where the SDKs are installed.
On my system this is
C:\Program Files (x86)\Adobe\Adobe Flash Builder 4.5\sdks
On a Mac, it might be
/Applications/Adobe Flash Builder 4.5/sdks
There should be a 3.6.0, 4.5.0 and a 4.5.1 present.
Make a copy of the 4.5.1 directory.
Download the AdobeAIRSDK from
Windows - http://airdownload.adobe.com/air/win/download/latest/AdobeAIRSDK.zip
Mac - not sure what the link is.
Unzip this file, then overlay the contents into the 4.5.1 directory. There are 8 directories, and 2 files. The target 4.5.1 has 10 directories, and 7 files (on my system)
In Flash Builder, project properties need to be tweaked.
The Flex Compiler tab - Check [Use a specific SDK:], and pick Flex 4.5.1 in the dropdown.
And in the Additional compiler arguments add
-swf-version=12
In your code, to use the AEC, pick the Enhanced Microphone, as in
microphone = Microphone.getEnhancedMicrophone();
Now if only I could figure out what all the settings do and which one's I need to tweak for our environment... loads of experimenting.
Mark. -
Jdev11g CPU profile and Memory Profile doesn't work for Mac
I'm running Jdev11g on Mac OSX 10.5.5,
CPU Profile and Memory Profile doesn't work. I got following message:
Error occurred during initialization of VM
Could not find agent library in absolute path: /Shared/jdevjavabase11110/jdeveloper/jdev/lib/profiler16.so
The file actually is there. I don't understand why they looking for .so file, it supposed to be mapped as .jnilib on Mac.
This is broken on TP4 as well.I'm still seeing this issue. Here is what I get:
/System/Library/Frameworks/JavaVM.framework/Versions/1.6.0/Home/bin/java -client "-agentpath:/Users/kamleshnanda/Downloads/jdeveloper/jdev/lib/profiler16.so=port=60950,jarpath=/Users/kamleshnanda/Downloads/jdeveloper/jdev/lib/profiler-agent.jar,enable=t,depth=1000,startup=connect,time" -classpath /Users/kamleshnanda/jdeveloper/mywork/MyJavaApplication/Project1/classes project1.Class1 Hello
Error occurred during initialization of VM
Could not find agent library in absolute path: /Users/kamleshnanda/Downloads/jdeveloper/jdev/lib/profiler16.so
Process exited with exit code 1.
I'm using the following build:
About
Oracle JDeveloper 11g Release 1 11.1.1.2.0
Java Edition Version 11.1.1.2.0
Build JDEVADF_11.1.1.2.0_GENERIC_091029.2229.5536
Copyright © 1997, 2009 Oracle and/or its affiliates. All rights reserved.
IDE Version: 11.1.1.2.36.55.36
Product ID: oracle.jdeveloper
Product Version: 11.1.1.2.36.55.36
Version
Component Version
========= =======
CVS Version (External) (CVS) 1.12.13 (client/server)
Java(TM) Platform 1.6.0_17
Oracle IDE 11.1.1.2.36.55.36
PMD JDeveloper Extension 4.2.5.3.0
Team Productivity Center 11.1.1.2.36.55.36
Versioning Support 11.1.1.2.36.55.36
Here are the JVM properties:
java.runtime.name Java(TM) SE Runtime Environment
java.runtime.version 1.6.0_17-b04-248-10M3025
java.specification.name Java Platform API Specification
java.specification.vendor Sun Microsystems Inc.
java.specification.version 1.6
java.vendor Apple Inc.
java.vendor.url http://www.apple.com/
java.vendor.url.bug http://bugreport.apple.com/
java.version 1.6.0_17
java.vm.info mixed mode
java.vm.name Java HotSpot(TM) 64-Bit Server VM
java.vm.specification.name Java Virtual Machine Specification
java.vm.specification.vendor Sun Microsystems Inc.
java.vm.specification.version 1.0
java.vm.vendor Apple Inc.
java.vm.version 14.3-b01-101
Here is the OS information:
os.arch x86_64
os.name Mac OS X
os.version 10.6.2 -
Flex builder 3.0.1 check sum
Today I download flex builder 3.0.1 (FB3_win.exe windows
version standalone ), when use md5sum check the file, It not same
as the adobe's page (Windows: 5685090ac5f2a514075e7a7bd7ba1eb0), my
checksum is (963d2a6fee8f9fc3fd496d1e69de093a FB3_win.exe),and I
redownload the FB3_win.exe now checksum is
(9d85401cfb42792278e84403fc565cbf FB3_win.exe).
now I don't know which one is the correct,anyone can tell me
the checksum of FB3_win.exe which download from
http://www.adobe.com/cfusion/entitlement/index.cfm?e=flex3email
now i searched form google,it sames
5685090ac5f2a514075e7a7bd7ba1eb0 is flex builder 3.0,not 3.0.1.
look at
http://blogs.adobe.com/flex/2008/02/its_on_flex_30_and_adobe_air_1.html
btw ,i use two download file , this two file both can install
and not report any error,and i also run and debug two sample
application ,it seems ok.but now i am confused totallyAdobe Newsbot hopes that the following resources helps you.
NewsBot is experimental and any feedback (reply to this post) on
its utility will be appreciated:
Flex 3 - Creating your first Flex AIR application in Flex
Builder:
If you haven't already done so, download and install Flex
Builder 3. For more information, see Setting up the Flex 3 SDK.
Contents
Link:
http://livedocs.adobe.com/flex/3/html/FBHelloWord_1.html
Adobe - Flex 3:
Try Flex Builder 3 free for 60 days. ... Alert This content
requires Flash. Download Flash Player now · Get Adobe
Flash Player
Link:
http://www.adobe.com/products/flex/
Flex 3 - Creating modules in Flex Builder:
The following steps describe how to create a new module in
Flex Builder. ... (This can result in smaller download sizes for
your SWF files.
Link:
http://livedocs.adobe.com/flex/3/html/creating_modules_2.html
Adobe - Flex Builder: Features:
Flex Builder 3 is now available in Standard and Professional
editions. ... Flex Builder 3 is a powerful Eclipse based IDE that
includes editors for MXML,
Link:
http://www.adobe.com/products/flex/features/flex_builder/
Flex 3 - About Flex Builder projects:
In addition to Flex projects, Flex Builder provides a basic
project type called ... where AIR developers can publish AIR
applications for users to download.
Link:
http://livedocs.adobe.com/flex/3/html/projects_2.html
Disclaimer: This response is generated automatically by the
Adobe NewsBot based on Adobe
Community
Engine. -
Flex 2 beta 3 compiler confused by syntactic error
Hi,
The Flex Builder 2 beta 3 compiler seems to get confused by a
specific syntactic mistake I've made in my code.
It is not making a "proper" syntax error report. It's instead
throwing a nasty "An internal build error
has occurred. Please check the Error Log" error, so I thought
I should share that on the forum.
The thing that lead to the "internal error" is that I wrote :
var newCourseXMLDesc : XML =
<CourseDescription
nomDuPlat=_{courseNameTextBox.text.toString()} />;
instead of that :
var newCourseXMLDesc : XML =
<CourseDescription
nomDuPlat={_courseNameTextBox.text.toString()} />;
Notice the position of the _ character just before the
courseNameTextBox.
I guess that should be fixed in a final version of the
compiler.
Cheers
Nicolas FonroseI just successfully deployed all three FDS web applications
on Tomcat 5.5.17 with Sun 1.5.0_06 without any exceptions. From the
stack trace it looks like this is thrown at startup. Can you
confirm?
Are you sure you deployed the war files cleanly? -
FLEX Builder Pro 3 New Flex Project cannot configure J2EE
I have FLEX Builder Pro 3 installed on a Windows XP machine. LiveCycle Data Services is installed (with Tomcat) on a Linux RHEL 5 machine. When trying to create a new FLEX project and configuring a J2EE server am very confused on what to put in Root Folder and Root URL. I have tried various paths on the Root Folder (with a drive mapped through windows and also with just using the servername) and keep getting the error message:
Invalid root. The WEB-INF/flex folder must contain either flex-config.xml or services-config.xml.
I've located the flex-confing file in the tomcat5\webapps\ROOT\WEB-INF directory, but still get the error.
Please any help would be greatly appreciated.Are your new classes referenced from the old code? Mxmlc employs a questionable form of "as-needed" linking, so classes that are not referenced from the main application are not even compiled. This referencing requirement is recursive; that is, any classes that are to be included have to be referenced from the main application, or from classes referenced by the main application, or from classes referenced by classes referenced by the main application, and so on. But if your new classes are not referenced at all from the old code, they will be ignored.
-
Flash CS3 vs. Flex Builder 2
Here's the $64,000 question: should we be developing in Flash
CS3 or should we shift over to Flex Builder 2? I maintain that AS
3.0 is a pain in the proverbial, but I've been researching and
finding as much help as possible online about it, and I've found
that by and large people are using Flex Builder 2 as the basis of
tutorials about AS 3.0. Does anyone have an official slant on this
question? Should we abandon Flash for Flex? Will it help? Will it
mitigate the difficulties non-programmers are experiencing with AS
3.0 - or as I call it simply ***? Would I be getting more responses
to my *** questions if I post them over in the *** forum under Flex
Builder?
Any thoughts on this matter would be most welcome, thank
you.Beatie3,
>> Help please.
Sorry about that ... some days are crazier than others. :-/
[From an earlier reply ...]
> Thank you very much, that's exactly the sort of answer I
> needed. Hmmm, cheque's in the mail. ;)
Heh, good on ya! :)
> I'm definitely a 'deseloper' and will stick with Flash.
I wish
> I had the luxury of only dipping into AS3.
I don't know that I'd call it a luxury, really. Work is
work. ;) As
you might imagine, though, Flex Builder 2 provides a number
of scripting
improvements over the Actions panel (there's really no
comparison; if you've
tried them both, the Actions panel barely feels useful) and
the Flex
framework offers significantly more UI Components. Ideally,
if the pocket
book allows it, using both applications is the killer setup.
> My problem is that I built a little program that draws
scale bars
> on uploaded images that can then be printed. It did
everything
> it needed to, but in AS2.0 you can't control the quality
of the
> imported jpgs.
When you say imported, you mean dynamically loaded (loaded
at runtime),
right? Otherwise, I'm confused. The Flash IDE itself allows
you to
determine the quality of imported JPGs. In ActionScript 3.0
... are you
talking about the Stage.quality property?
> I'm experimenting with Sprites and I have something
appearing
> as the line is drawn but I can't crack the new way to
express
> coordinates.
Not sure what might be tripping you up, actually. The
coordinate grid
is the same. Horizontally, higher numbers move toward the
right;
vertically, higher numbers move toward the bottom. That's the
same as it's
been.
> I just want a blue hair line with a nice green dot at
each end
> that can be seen while the line is drawn. Once the
mouseUp
> happens the drawing guide should disappear and the black
> line appear.
Having heard what you're after, I just started a quick
experiment from
scratch. Here's my version, below. Note: I've made no effort
to optimize
my code. This is just a first draft to achieve a blue line
segment with
green dots on each end that becomes a black line segment when
the mouse
lifts.
var startX:Number;
var startY:Number;
var canvas:Sprite = new Sprite();
addChild(canvas);
canvas.stage.addEventListener(MouseEvent.MOUSE_DOWN,
mouseDownHandler);
canvas.stage.addEventListener(MouseEvent.MOUSE_UP,
mouseUpHandler);
function mouseDownHandler(evt:MouseEvent):void {
startX = mouseX;
startY = mouseY;
var dot:Sprite = new Sprite();
dot.name = "dotStart";
dot.graphics.beginFill(0x00FF00);
dot.graphics.drawCircle(mouseX, mouseY, 5);
dot.graphics.endFill();
canvas.addChild(dot);
dot = new Sprite();
dot.name = "dotEnd";
dot.graphics.beginFill(0x00FF00);
dot.graphics.drawCircle(0, 0, 5);
dot.graphics.endFill();
canvas.addChild(dot);
canvas.addEventListener(Event.ENTER_FRAME,
enterFrameHandler);
function enterFrameHandler(evt:Event):void {
var dot:DisplayObject = canvas.getChildByName("dotEnd");
dot.x = mouseX;
dot.y = mouseY;
canvas.graphics.clear();
canvas.graphics.lineStyle(1, 0x0000FF);
canvas.graphics.moveTo(startX, startY);
canvas.graphics.lineTo(mouseX, mouseY);
function mouseUpHandler(evt:MouseEvent):void {
canvas.removeEventListener(Event.ENTER_FRAME,
enterFrameHandler);
canvas.removeChild(canvas.getChildByName("dotStart"));
canvas.removeChild(canvas.getChildByName("dotEnd"));
canvas.graphics.clear();
canvas.graphics.lineStyle(2, 0x000000);
canvas.graphics.moveTo(startX, startY);
canvas.graphics.lineTo(mouseX, mouseY);
There's a lot of repeated code there, and this isn't how I'd
leave the
above in an actual project, but by spilling out a rough cut
like this, I'm
hoping it gives you something to work with -- showing the
mechanics of how
this might be done.
David Stiller
Adobe Community Expert
Dev blog,
http://www.quip.net/blog/
"Luck is the residue of good design." -
Flex Builder 2 corrupting Eclipse 3.2.1
Flex Builder 2 has some issues with Eclipse 3.2.1. I was
working with the trial version, so maybe the full version does not
exhibit these same problems, but if that is the case, then it is
disappointing that adobe is trying to support two separate products
instead of trying to resolve issues.
The largest issue with the Flex Builder 2 plugin for eclipse
is that if you have a flex project in the same workspace as other
projects (like dynamic Java projects) the flex builder 2 will try
to incorporate those projects in to the flex project when you do a
build or a clean only on that specific flex project. As a result,
eclipse consumes enormous amounts of memory that even with 2 gigs
allocated to the heap, it runs in to out of memory exceptions
frequently and the stability of eclipse has degraded significantly
since I installed this product! The flex projects that I had loaded
were some of the examples dealing with SpringGraph so I would not
consider them as being large or complex. When there is a build
occuring on just a Flex Project, it SHOULD HAVE NO BUSINESS even
scanning other non-related projects regardless as to if they are in
the same workspace!!!
I am not too impressed with flex's interface with eclipse on
the memory, the instability it introduced to eclipse, or how
SpringGraph handles large graphs, so I did not pursue getting a
license for future development. I also felt that the asking price
for the Flex Builder 2 is steep for what you get and its maturity
level. As such, when the license expired, Adobe had the nerve to
disable core functionality within Eclipse!!! For example, it would
not allow a CSS document to be opened in the CSS Editor! It
Hijacked the basic Eclipse functionality!!!
I am very disappointed in how the Flex Builder 2 plugin for
Eclipse does not play friendly!
But at least it does allow itself to be disabled. I am
grateful for at least that level of accepted behavior.Cluebcke, thanks for the reply!
I am using a compaq nx7010 laptop with 2 gigs ram, 60 gig hd,
eclipse is set to utilize a minimum of 512 megs and a maximum of
1540 megs for the heap space. Virtual memory is set to a max of
4092 megs. Fairly generous I would assume. I doubt it was a
configuration issue, but hey, I’m open to learning and the
best lessons are through mistakes! ;-)
Sorry, I was being a bit sarcastic when I mentioned that
perhaps the issues were related to the free trial version knowingly
perfectly well that in fact there is no difference between the two
products. But I guess I was also conceding a possible out for Flex
too. Hmm...
To clarify my comment about aggressively compiling against
other projects:
1) I had about 4 demos loaded in to a workspace (269 files,
82 folders, and 7.2 megs including my 1 test project as mentioned
in item 4)
2) I had about 7 large Java projects loaded in to the same
workspace
3) Total workspace size was about 22,000+ files and 1600+
megs, give or take a fair number either way.
4) I was making changes to a simple flex project based upon
a SpringGraph demo
5) I choose to manually build only the small flex project I
was working on so as to replace all the generated files. NOTE:
Might have been a clean, but only on that one flex project and NOT
the whole work space. It takes too long to rebuild all of my other
Java projects so that option has been unchecked for quite a while.
6) What I saw in the Eclipse progress window was a list of
files within my flex project getting reconstructed, and then it
started to scan through the other projects too. All of their names
and resources were flashed within that window.
7) When finished with the build of the ONE flex project, the
Java heap was basically gone. Starting a TomCat server would cause
an out of memory exception. Recall I have allocated 1.5 gigs for
the heap.
8) Checking the other Java projects and Flex projects, the
timestamps on the objects did not reflect that they were just
rebuilt. They were untouched. Proof that I did not perform a build
or a clean over the whole workspace.
I agree with you whole heartedly that unless I explicitly
select “build all” or “clean all” it should
not touch other projects in anyway. But it did.
As far as the issue with the CSS editor, I understand and
accept your point. Perhaps as a friendly suggestion, when the trial
expires, the plugin should uninstall itself. This may be very
doable, and still have the functionality of a reminder and
reactivation upon registration if Flex Builder actually had a
second plugin called something like "FlexBuilder Registration"
which would "intercept" attempts to edit and utilize the
FlexBuilder only functionality so an informative message could be
displayed. The benefit would be that normal functionality for
non-flex resources such as CSS would return to normal.
Anyway, as I stated before, I was not too impressed with
performance of large graphs. What I consider to be large would be
on the magnitude of 20,000 to 100,000+. It would need to display
just about all nodes, or at lease an abstract relationship of those
nodes rolled up to a higher level. I realize that SpringGraph is
not ideal for those situations to begin with, but I was exploring
the idea of writing other plugins to deal with other graphing
formats.
I guess to be fair to Flex in general, I should probably ask
a general question of how well does Flex deal with large data sets
that need to be resident and the manipulations of those data sets?
Thanks for your time,
Scott Tabar -
Flex Builder choked - need help please
I had to go out of town for a few days so I installed Flex Builder 3 on my MacBook, downloaded and installed Flex SDK 3.3 (Since that is what I have been building on, on my office Mac), created an exported .zip of my major project files on my office Mac, copied it to the MacBook and set off on my trip.
When I set up the MacBook to start work, things looked OK at first, until I tried to switch to design mode. It popped up an error that "This component is based on ______, which is not a visual component. Switch to source mode to edit it" It did this for components based on Grid, Canvas, HBox and more.
I was stumped, and miles from an Internet connection to be able to do research. FInally I decided maybe my install of SDK 3.3 was corrupt. I reset in the project prefs to use SDK 3.0 and ... everything worked perfectly! I did what I needed to do for the rest of the weekend and returned home.
Now, I just tried to export my project as a Flex Project Archive on my MacBook. It resulted in a 24K .zip file - basically empty - that can't be used. So, I just renamed my primary project folder on the office Mac to hide it from Flex Builder, then copied all the files, including the hidden .flexproperties, .project and .actionscriptproperties, from the MacBook onto my office Mac in a new project folder named the same and in the same location as previously. The transfer appeared to be successful.
Now, on my office Mac, I am getting the message "An unknown item is declared as the root of your MXML document.Switch to source mode to correct it." This happens every time I try to switch to Design view, regardless of what component is used in the MXML doc.
After many attempts at figuring out and fixing the problem I tried setting the project properties to utilize SDK 3.1. Once that process was complete, then I went into properties again and set it to 3.3. It appears that I may have succeeded in restoring it to usability, but I'm not confident in that yet.
Can anyone give me some insight into the cause and fix of this problem? Especially the failure of Flex Builder to create a viable .zip archive file? I will be needing to move the project back and forth between my computers quite a bit for travel in the next few months.
Thanks.
PaulI am not being facetious with my answer but have you considered simply using XCode and Apache Ant and creating your own build script? This is the approach that I've had the fewest of problems with. The reason being is that Ant is Ant no matter where it is. It also cuts out all the background noise (i.e. configuration files, scripts, etc).
I have had similar problems like what you've mentioned using Netbeans and Eclipse (e.g. a version change or an SDK change and suddenly my project is somehow foobar).
As for your error message:
"An unknown item is declared as the root of your MXML document.Switch to source mode to correct it."
StackOverflow seemed to have a solution:
http://stackoverflow.com/questions/347196/how-to-resove-this-error-an-unknown-item-is-decl ared-as-the-root-of-your-mxml-do
Don't know if it's your solution. Sometimes these automated tools place little hidden scripts in their comments that are meant to mean something for the drag-and-drop GUI editor and deleting these comments confuses the IDE. -
Flex Builder shows one error at a time
Hi folks,
I am new to flex. I have written a sample application in ActionScript. When I tried to build the application I am not able to see all my compile time errors at a single time. Following is the brief summary of the Issue occured while building the sample application:
- First time one compliation error is shown.
- After fixing this compilation error
- Another compilation error is shown.(remember this error exists even at first time also) (and so on)
Can't I see all the compilation errors at once (so that I can fix all my errors at one shot) in Flex Builder?
(Note: I have the 'strict' mode enabled for the flex project)
Thanks,
VamsiIt depends on the error. If your error is confusing the heck out of the compiler, the compiler might not be able to reason about the rest of your source code, so it won't catch the rest of your errors. It also depends on the compiler--smarter compilers can show you more informative errors, or more errors at a time.
I've found that most of the time, FlexBuilder is pretty good at reporting multilpe errors. Unfortunately, when it's not, there's not much you can do.
Maybe you are looking for
-
Migration from NWDI 6.40 to NWDS Only 7.0 and SVN
Hi, I am Migrating our source code for an update from EP 6.0 to EP 7.0 I have some projects residing in a subversion repository some projects beeing "maintained" in NWDI. At the moment I am trying to move the projects from NWDI to subversion. I strug
-
We use Open Sans throughout our website. I have it set up in Muse how I want it, but when exporting to FTP I'm getting a lot of text reflowing. Muse seems to be increasing word spacing on export, enough that even over a short 5 line paragraph of aro
-
Modifying .PRM file for user defined database functions
Hi, Currently we have the BOXI 3.1.8 Universe in oracle database and we are planning to migrate to SQL server 2008.And the universe contains few oracle functions and user defined functions in the universe objects. In the way of migration we are plann
-
HT4413 what is a macbook pro.sparse bundle password?
I forgot my password for the encrypted backup on my time machine. What do I do to retrieve the information?
-
I accidentally posted photos that were intended for my husband on to the wrong album and now my whole family can see them. I thought that by deleting the album it would be erased from the stream, but it's not. Now I'm stuck with those photos on all t