Wie kann ich NetBeans an die Windows 7-Taskleiste anheften?

18

Ich habe herumgegoogelt und es scheint, dass ich nicht der einzige mit dem Problem bin, aber ich konnte keine Lösung finden. Vielleicht hat es jemand hier herausgefunden.

Das Problem ist, dass netbeans.exe tatsächlich ein Stub ist, der javaw.exe aufruft. Wenn ich versuche, den NetBeans-Prozess an die Taskleiste anzuheften, hänge ich tatsächlich "Java (TM) Platform SE Binary" an. Das ändert das Icon und der Pin funktioniert nicht.

Das Lustige ist, dass es auf einer anderen Maschine funktioniert. Ich weiß nicht, ob dies daran liegt, dass es sich um eine andere Version von NetBeans oder eine andere Version von Java handelt.

Hat jemand das herausgefunden?

Hinzugefügt: Ich weiß, dass dies irgendwie nicht programmierbezogen ist. Auf der anderen Seite gibt es hier viele Themen, wie Sie Ihre Programmierumgebung verbessern können, und diese ist nicht schlechter als diese.

Ach ja, und übrigens - Windows 7 Enterprise x64; Java JDK 1.6.17; Netbeans 6.8

Vilx-
quelle
Ich kann meine überhaupt nicht anheften (NB6.9, Win7 Pro 64-Bit, 32-Bit-JDK)
Armand
@Alison - siehe die Kommentare unter der akzeptierten Antwort. Anscheinend wurde es bereits als Netbeans-Bug registriert. Außerdem gibt es dort eine Problemumgehung.
Vilx

Antworten:

17

Problem gefunden, obwohl nicht genau gelöst. Hier ist die Beschreibung:

Netbeans.exe ist ein in C ++ geschriebenes benutzerdefiniertes Startprogramm. Es ist ein 32-Bit-Modul. Beim Laden wird zuerst versucht, Java als DLL in sich selbst zu laden und anschließend NetBeans zu starten. Wenn die Java-Laufzeit 64-Bit ist, ist dies nicht möglich, da ein 32-Bit-Modul kein 64-Bit-Modul laden kann und umgekehrt. Daher wird Java als separater Prozess (javaw.exe) mit den richtigen Parametern gestartet.

Auf der Maschine, auf der "alles funktioniert", hatte ich eine 32-Bit-Java-Laufzeit installiert, aber auf der "fehlerhaften Maschine" hatte ich das vollständige 64-Bit-JDK installiert.

Im Wesentlichen sehe ich drei mögliche Lösungen:

  • Deinstallieren Sie das 64-Bit-Java und installieren Sie das 32-Bit-Java.
  • Versuchen Sie, den Launcher als 64-Bit-Modul zu kompilieren (wer weiß, ob das funktioniert, wahrscheinlich nicht ohne Änderungen).
  • Erstellen Sie direkt eine Verknüpfung zu javaw.exe mit den richtigen Parametern (diese finden Sie im Task-Manager).
Vilx-
quelle
Dies ist als Bug 178273 in der NetBeans-Bugzilla protokolliert.
mjs
Gibt es ein Update für den Fehler? Ich bin auf NB6.8 und verwende gerade 32-Bit-Java als Workaround.
12.
@ Just12 - anscheinend nicht, aber dort ist eine Problemumgehung erwähnt. Die 32-Bit-JVM wird trotzdem verwendet.
Vilx
1
Zum Glück wurde dieser Fehler in Version 7.2 behoben
Dave Lancea
2
Yay! Es hat nur etwas mehr als 2 Jahre gedauert! XD (OK, um ehrlich zu sein, ich verstehe, dass sie wahrscheinlich ernstere Dinge zu tun hatten als dies)
Vilx
12

Mithilfe des kostenlosen SevenBeans- Moduls können Sie NetBeans an die Taskleiste anheften und andere Windows 7-Funktionen nutzen .

zerrissen
quelle
Ja, anscheinend das SevenBeans-Modul, das von zerrissenen Arbeiten vorgeschlagen wurde. Es ist wahrscheinlich offensichtlich, aber wenn Sie die in Netbeans Bugzilla beschriebene Problemumgehung vor der Installation von SevenBeans verwendet haben, muss die Anwendung aus der Taskleiste entfernt und erneut fixiert werden, damit die Dinge wieder funktionieren. Andernfalls scheint die Fixierung nach der Installation von SevenBeans nicht mehr zu funktionieren.
Ich kann bestätigen, dass dies mit Windows 7 x64 und dem JDK x64 funktioniert. Starten Sie Netbeans zum ersten Mal nach der Installation von SevenBeans. Dann heften Sie das Symbol in der Taskleiste an, nachdem Netbeans vollständig gestartet wurde. Beim Start von x64 wird ein zusätzliches Symbol angezeigt, das jedoch nach dem Ausführen von Netbeans nicht mehr angezeigt wird.
Brian Reiter
Hat es das Leistungsproblem, auf das Vilx hingewiesen hat?
12.
3

Problem gefunden und gelöst.

Dies hängt davon ab, welche ausführbare NetBeans-Datei Sie in Kombination mit der installierten Java-VM-Bitgröße ausführen:

Nur Java 32-Bit installiert:

  • netbeans.exe kann angeheftet werden
  • netbeans64.exe kann nicht angeheftet werden

Nur Java 64-Bit installiert:

  • netbeans.exe kann nicht angeheftet werden
  • netbeans64.exe kann angeheftet werden

Hinweis: Als ich zwischen VM-Versionen wechselte, beschwerte sich NetBeans (allerdings nur dieses Mal; ich erinnere mich nicht, dass ich mich in der Vergangenheit beschwert habe). Dies kann durch Ändern der netbeans_jdkhome=Zeile in gelöst werdenetc/netbeans.conf

Mark Jeronimus
quelle
Dies sollte die akzeptierte Antwort sein.
php_nub_qq
2

Ich habe gerade NetBeans 6.8 in die Taskleiste gepinnt, indem ich es über das Startmenü gestartet und dann mit der rechten Maustaste auf das Symbol in der Taskleiste geklickt habe. Die erstellte Verknüpfung verweist auf "C: \ Programme \ NetBeans \ bin \ netbeans.exe" und funktioniert einwandfrei.

Java 6 Update 17 unter Windows 7 32-Bit


quelle
1
Komisch, weil ich genau das gleiche Setup habe, nur dass mein Windows 64-Bit ist. Die andere Maschine, die ich erwähnt habe, ist jedoch auch 64-Bit.
Vilx
Auf diese Weise kann ich ein angeheftetes NetBeans-Symbol erstellen. Wenn ich jedoch darauf klicke, wird in der Taskleiste ein "neues" NetBeans-Symbol erstellt. (Alles ist 64-Bit.)
mjs
1

SCHNELLE LÖSUNG:

  1. Öffnen Sie das Startmenü
  2. Suchen Sie die NetBeans-Verknüpfung
  3. Rechtsklick, wählen Sie "An Taskleiste anheften"

Funktioniert auch für die vollständige 64-Bit-Installation!

Sibidiba
quelle
1
Ja und nein; Dadurch wird der Launcher, nicht jedoch die eigentliche NetBeans-App, angeheftet. Sie haben also zwei Symbole, wenn NetBeans ausgeführt wird.
0

Die JVM-Startparameter finden Sie unter \ etc \ netbeans.conf


quelle
0

Hier ist der vollständige Befehl zum Starten des IDE-Prozesses auf meinem Computer (ermittelt über den exzellenten Prozess-Explorer ). Offensichtlich wird Ihre eigene etwas anders sein.

"C:\Program Files\Java\jdk1.6.0_17\jre\bin\javaw.exe" "-Dnetbeans.importclass=org.netbeans.upgrade.AutoUpgrade" "-Dnetbeans.accept_license_class=org.netbeans.license.AcceptLicense" "-client" "-Xverify:none" "-Xss2m" "-Xms32m" "-XX:PermSize=32m" "-XX:MaxPermSize=200m" "-Dapple.laf.useScreenMenuBar=true" "-Dsun.java2d.noddraw=true" "-Xmx512m" "-Djdk.home=C:\Program Files\Java\jdk1.6.0_17" "-Dnetbeans.home=C:\Program Files\NetBeans 6.8\platform11" "-Dnetbeans.user=C:\Users\alex\.netbeans\6.8" "-XX:+HeapDumpOnOutOfMemoryError" "-XX:HeapDumpPath=C:\Users\alex\.netbeans\6.8\var\log\heapdump.hprof" "-Dnetbeans.system_http_proxy=DIRECT" "-Dsun.awt.keepWorkingSetOnMinimize=true" "-Dnetbeans.dirs=C:\Program Files\NetBeans 6.8\nb6.8;C:\Program Files\NetBeans 6.8\ergonomics2;C:\Program Files\NetBeans 6.8\ide12;C:\Program Files\NetBeans 6.8\java3;C:\Program Files\NetBeans 6.8\xml2;C:\Program Files\NetBeans 6.8\apisupport1;C:\Program Files\NetBeans 6.8\webcommon1;C:\Program Files\NetBeans 6.8\websvccommon1;C:\Program Files\NetBeans 6.8\enterprise6;C:\Program Files\NetBeans 6.8\mobility8;C:\Program Files\NetBeans 6.8\profiler3;C:\Program Files\NetBeans 6.8\ruby2;C:\Program Files\NetBeans 6.8\python1;C:\Program Files\NetBeans 6.8\php1;C:\Program Files\NetBeans 6.8\visualweb2;C:\Program Files\NetBeans 6.8\soa2;C:\Program Files\NetBeans 6.8\identity2;C:\Program Files\NetBeans 6.8\uml6;C:\Program Files\NetBeans 6.8\harness;C:\Program Files\NetBeans 6.8\cnd3;C:\Program Files\NetBeans 6.8\dlight2;C:\Program Files\NetBeans 6.8\groovy2;C:\Program Files\NetBeans 6.8\extra;C:\Program Files\NetBeans 6.8\javafx2;C:\Program Files\NetBeans 6.8\javacard1" "-Djava.class.path=C:\Program Files\NetBeans 6.8\platform11\lib\boot.jar;C:\Program Files\NetBeans 6.8\platform11\lib\org-openide-modules.jar;C:\Program Files\NetBeans 6.8\platform11\lib\org-openide-util.jar;C:\Program Files\NetBeans 6.8\platform11\lib\locale\boot_ja.jar;C:\Program Files\NetBeans 6.8\platform11\lib\locale\boot_pt_BR.jar;C:\Program Files\NetBeans 6.8\platform11\lib\locale\boot_zh_CN.jar;C:\Program Files\NetBeans 6.8\platform11\lib\locale\org-openide-modules_ja.jar;C:\Program Files\NetBeans 6.8\platform11\lib\locale\org-openide-modules_pt_BR.jar;C:\Program Files\NetBeans 6.8\platform11\lib\locale\org-openide-modules_zh_CN.jar;C:\Program Files\NetBeans 6.8\platform11\lib\locale\org-openide-util_ja.jar;C:\Program Files\NetBeans 6.8\platform11\lib\locale\org-openide-util_pt_BR.jar;C:\Program Files\NetBeans 6.8\platform11\lib\locale\org-openide-util_zh_CN.jar;C:\Program Files\Java\jdk1.6.0_17\lib\dt.jar;C:\Program Files\Java\jdk1.6.0_17\lib\tools.jar" org/netbeans/Main "--branding" "nb"

Es stellte sich heraus, dass Verknüpfungen auch auf eine bestimmte Anzahl von Zeichen beschränkt sind und alles, was nicht passt. Ich habe versucht , eine Umgebungsvariable zu schaffen alles , anstatt zu halten, aber es stellte sich heraus , Umgebungsvariablen von begrenzter Länge waren auch (wenn auch nicht so drastisch), so dass ich zwei von ihnen am Ende zu schaffen.

Am Ende hatte ich eine Abkürzung für den "C:\Program Files\Java\jdk1.6.0_17\jre\bin\javaw.exe" %NB_PARAMS1% %NB_PARAMS2%Einstieg "C:\Program Files\NetBeans 6.8\"und das scheint gut zu funktionieren.

Wenn Sie möchten, dass Ihre Verknüpfung das richtige Symbol aufweist, können Sie sie ganz einfach in das Symbol des Startprogramms ändern.

Alex Barrett
quelle