Icone dell'interfaccia di Eclipse molto piccole sullo schermo ad alta risoluzione in Windows 8.1


100

Le varie icone e pulsanti nell'interfaccia di Eclipse (Kepler) sono molto, molto piccoli su un laptop con uno schermo di 3200x1800px. La decorazione rossa dell'errore che appare per indicare errori sui file è difficile da vedere a meno che il mio naso non sia a pochi cm dallo schermo.

Ho giocato con la regolazione della risoluzione dello schermo e altre impostazioni nel sistema operativo (Windows 8.1), il che aiuta, ma fa apparire altre applicazioni troppo grandi, e anche in questo caso le icone di Eclipse sono scomodamente piccole. L'ingrandimento dei caratteri nelle preferenze di Eclipse (finestra> preferenze> Carattere finestra di dialogo) non influisce sulla dimensione dell'icona.

Esiste un modo semplice per forzare icone più grandi? Qualche soluzione (ho usato la lente d'ingrandimento ma è una soluzione piuttosto goffa)? Devo semplicemente acquistare una lente d'ingrandimento e tenerla accanto al mouse? Forse qualcuno dovrebbe creare un mouse con una lente di ingrandimento incorporata? :)

Grazie.


puoi provare a usare Windows senza la modalità aero..può essere che la cosa cambierà le icone di visualizzazione..o cambiare la risoluzione dello schermo solo per eclipse ..
Lucky

Ho notato che quando Eclipse si avvia, la schermata iniziale appare inizialmente ingrandita (correttamente), ma poi ad un certo punto torna alla risoluzione normale (piccola). Questo persiste nel banco di lavoro. Mi chiedo se ciò accade quando si passa .exedall'esecuzione alla JVM e quindi perde alcune informazioni di cui Windows ha bisogno per ridimensionare correttamente?
nilskp

3
Sebbene ci siano molte buone soluzioni alternative in queste risposte, esiste una segnalazione ufficiale di bug su Eclipse ( bugs.eclipse.org/bugs/show_bug.cgi?id=421383 ). Ti consiglio di votare per il bug se questo ti colpisce, per assegnargli la priorità.
LondonAppDev

Mi chiedo se qualcosa potrebbe essere fatto utilizzando la nuova CSS funzionalità di Eclipse 4. Ho cercato, ma sto trovando questo inganno CSS di essere abbastanza complessa e non hanno trovato una semplice .iconclasse ma per il quale siamo in grado di impostare l' sizea 200%.
Redsandro

Questo problema è stato risolto nell'ultima versione Eclipse Photon
crowne

Risposte:


7

Ho cercato soluzioni per questo problema nell'ultimo mese, ma non ho ancora trovato una soluzione ideale. Sembra che dovrebbe esserci un modo per aggirarlo, ma non riesco a trovarlo.

Uso un laptop con uno schermo 2560x1600 con l'impostazione di ingrandimento del 200% in Windows 8.1 (che lo fa sembrare uno schermo 1280x800 ma più chiaro).

Le applicazioni che supportano tale modalità "HiDPI" sembrano semplicemente stupende, ma quelle che non lo fanno (ad esempio Eclipse) mostrano icone minuscole che sono quasi illeggibili.

Uso anche una versione obsoleta di Visual Studio. Questo non è stato aggiornato per HiDPI (ovviamente MS vuole che utilizzi una versione più recente di VS), ma funziona ancora abbastanza bene con gli schermi HiDPI poiché ridimensiona le cose due volte: le dimensioni delle icone e delle lettere sono normali ma guardare a bassa risoluzione.

Dopo aver visto come funziona VS, ho iniziato a cercare un modo per avviare Eclipse nella stessa modalità poiché non sarebbe tecnicamente molto difficile ridimensionare le cose come fa VS. Ho pensato che ci sarebbe stata un'opzione che avrei potuto impostare per avviare Eclipse in quella modalità. Non sono riuscito a trovarlo però.

Dopotutto, ho finito per abbassare la risoluzione dello schermo a 1/4 (da 2560x1600 a 1280x800) senza ingrandimento (dal 200% al 100%) e non sfruttare lo schermo ad alta risoluzione fino a quando Eclipse non viene aggiornato per supportarlo da quando ho ha dovuto lavorare, ma sto aspettando disperatamente una risposta a questo problema.


Grazie, Jae. Ho seguito anche il tuo approccio: ridurre la risoluzione dello schermo e l'ingrandimento in tandem. Non è una soluzione ideale poiché molte applicazioni hanno un aspetto migliore alla risoluzione più alta. Si spera che più applicazioni trarranno presto vantaggio dalle funzioni HiDPI.
Vedere Jay719

2
Ho appena trovato un thread relativo a questo argomento: bugs.eclipse.org/bugs/show_bug.cgi?id=421383
Jae

2
@Jae mentre il bug che hai collegato risolveva il problema fondamentale in SWT, l'interfaccia utente di Eclipse deve ancora adottare la nuova API, vedi bugs.eclipse.org/382972 (ancora irrisolto al momento della stesura di questo documento).
Stephan Herrmann

43

Anch'io ho lottato un po 'con questo problema. Ho notato che molti di voi hanno pubblicato risoluzioni davvero complicate, ma c'è un modo molto più semplice per farlo! È solo un programma e non dovresti dover modificare gli script o installare strumenti di terze parti. Il problema è correlato al ridimensionamento DPI elevato come menzionato sopra, ma quello che penso manchi a molti di voi è che non è possibile modificare direttamente le impostazioni di compatibilità sul programma di avvio stesso. Il launcher e l'eclissi sono due programmi diversi! È necessario accedere a Eclipse.exe e sovrascrivere l'opzione di ridimensionamento DPI elevato lì. Una volta impostato, puoi utilizzare il programma di avvio normalmente. Il programma di avvio colpirà l'eseguibile, avvierà eclipse.exe e poiché si impostano le impostazioni di compatibilità su .exe verrà eseguito utilizzando tali impostazioni.

Ecco una schermata di come ho impostato le mie impostazioni di compatibilità.

Impostazioni di compatibilità di Eclipse.exe

E sì, le icone erano molto piccole prima di regolare questa impostazione. Ho provato a impostare le impostazioni di compatibilità sul programma di avvio stesso ma ovviamente non ha risolto il problema. Ma dopo aver impostato l'impostazione Override High DPI per le icone di eclipse.exe ora sono di dimensioni normali. Fammi sapere se funziona per gli altri!


Questo è molto interessante e ho intenzione di utilizzare questa funzione su altre applicazioni.
java Si prega di 42

Questo è fantastico, l'unico problema è che eclipse mostra molte cose sfocate.
Chagai Friedlander

36

Ho pensato che una soluzione sarebbe stata quella di eseguire un'operazione batch sui JAR Eclipse che contengono le icone e raddoppiano le loro dimensioni. Dopo un po 'di ritocchi, ha funzionato. I risultati sono abbastanza buoni - ci sono ancora alcune icone "ostinate" che sono minuscole ma la maggior parte sembra buona.

Eclipse dopo l'elaborazione su QHD

Ho messo insieme il codice in un piccolo progetto: https://github.com/davidglevy/eclipse-icon-enlarger

Il progetto funziona da:

  1. Iterando su ogni file nella directory base di eclipse (specificato nella riga dell'argomento)
  2. Se un file è una directory, crea una nuova directory sotto quella presente nella cartella di output (specificata nella riga dell'argomento)
  3. Se un file è un PNG o GIF, double
  4. Se un file è di un altro tipo, copia
  5. Se un file è un JAR o uno ZIP, crea un file di destinazione ed elabora il contenuto utilizzando un processo simile: a. Le immagini vengono raddoppiate b. Gli altri file vengono copiati in ZipOutputStream così come sono.

L'unico problema che ho riscontrato con questa soluzione è che funziona davvero solo una volta: se è necessario scaricare i plug-in, farlo nella posizione originale e riapplicare l'icona aumenta il processo batch.

Sul Dell XPS ci vogliono circa 5 minuti per funzionare.

Felice di suggerimenti / miglioramenti, ma questa è davvero solo una soluzione ad hoc mentre aspettiamo che il team di Eclipse ottenga una soluzione.


1
Qualcuno potrebbe costruirlo, per favore (per l'uso con Eclipse C / C ++)?
Dvor_nik

2
Potresti approfondire un po 'come eseguirlo in Eclipse? Quando lo importi come progetto Java, ottengo 58 errori. Non so niente di Java. Preferibilmente aggiungere a README.md. :)
Redsandro

puoi eseguirlo eseguendo come -> Applicazione Java e quindi aggiungere due argomenti -b PATH_TO_YOUR_ECLIPSE_DIR -o PATH_TO_EMPTY_OUTPUT_DIR
Manuel Manhart

Ha generato un'eccezione ArrayOutOfBounds dopo un po ', ma se copi tutti i file mancanti dalla cartella eclipse (senza sovrascritture) nella cartella di output, si avvia e le icone sono più grandi.
Manuel Manhart

17

Per il completamento ho pensato di aggiungere che questo problema è stato risolto in Eclipse 4.6 Neon https://www.eclipse.org/downloads/index-developer.php (l'attuale versione per sviluppatori). Le icone sembrano un po 'tristi (bassa risoluzione) ma almeno sono ridimensionate correttamente sul mio schermo 4k.


4
Ecco la pagina "cosa c'è di nuovo" per Neon ... e non indovinerai mai cosa c'è in cima alla lista: eclipse.org/eclipse/news/4.6/platform.php
HDave

6
Per quelli, come me, che hanno scoperto che anche sul nuovo Eclipse non era ridimensionato, vedere qui: swt-autoscale-tweaks Fondamentalmente ho aggiunto -Dswt.autoScale=quarteral mio eclipse.inifile.
CrazyPenguin

17

Ha avuto lo stesso problema, per risolverlo, creare un collegamento del programma di avvio, fare clic con il pulsante destro del mouse> proprietà> compatibilità> selezionare "Ignora comportamento di ridimensionamento DPI elevato" e selezionare Sistema avanzato dal menu a discesa come mostrato nella foto sotto. Riavvia eclipse dopo le modifiche.

inserisci qui la descrizione dell'immagine


1
Questa è l'unica soluzione semplice che ha funzionato per me su Windows 10 con Eclipse Photon
Kapil

Dopo averlo fatto, le mie schede iniziarono a lampeggiare e a scomparire, quindi sono dovuto tornare indietro e ora ho ancora icone piccole :(
gtx

11

Sto funzionando su un Dell XPS 15. Piuttosto che riempire con risoluzioni e ingrandimenti e tutto il resto, ho semplicemente fatto quanto segue:

  • Fare clic con il pulsante destro del mouse sull'icona di avvio
  • Fare clic su "proprietà"
  • Seleziona la scheda "compatibilità"
  • Scegli "Windows XP (Service Pack 3)" per "Esegui questo programma in modalità compatibilità per:".

Tutto sembra funzionare bene e il display sembra buono (anche se un po 'sfocato / pixellato). L'unica differenza che posso vedere è che la barra del titolo è in stile Windows XP (oh no !!!).

Sono curioso di sapere se questo funziona per gli altri e se qualcuno incontra problemi.


4
Purtroppo, non c'è "Windows XP ..." nel menu a discesa in Windows 8.1, la versione più bassa è Vista (che, almeno sul mio sistema, impedisce l'avvio)
topherg

@cgoddard Questo ... non è vero. Ho appena seguito le istruzioni di Jamie su Windows 8.1 e ha funzionato perfettamente.
pdusen

1
@pdusen non è sicuro di cosa ti fa pensare, non c'è alcuna opzione per win xp. ho recentemente eseguito un'installazione pulita e ora l'impostazione della modalità di compatibilità non ne impedisce il caricamento, ma sembra ancora lo stesso
topherg


1
Avete ragione entrambi. L'opzione esiste solo per eclipse a 32 bit. Ho provato le istruzioni con eclipse a 64 bit e vedo solo la compatibilità con Vista. Ho provato con 32 bit e ho visto la versione delle impostazioni disponibili con Windows XP e FUNZIONA! Questo è fantastico. Finalmente ha reso il mio Yoga II Pro utile per lo sviluppo di Java.
Dan Smith

9

Ho scoperto che il modo più semplice era creare un file manifest che costringe Windows a ridimensionare l'applicazione. È sfocato e non ideale, ma migliore di un'interfaccia utente quasi invisibile! Sembra che questa tecnica sia applicabile anche a qualsiasi applicazione.

Crea un file eclipse.exe.manifest nella stessa cartella di eclipse.exe e inserisci il seguente XML al suo interno:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>

<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0" xmlns:asmv3="urn:schemas-microsoft-com:asm.v3">

<dependency>
  <dependentAssembly>
    <assemblyIdentity
      type="win32"
      name="Microsoft.Windows.Common-Controls"
      version="6.0.0.0" processorArchitecture="*"
      publicKeyToken="6595b64144ccf1df"
      language="*">
    </assemblyIdentity>
  </dependentAssembly>
</dependency>

<dependency>
  <dependentAssembly>
    <assemblyIdentity
      type="win32"
      name="Microsoft.VC90.CRT"
      version="9.0.21022.8"
      processorArchitecture="amd64"
      publicKeyToken="1fc8b3b9a1e18e3b">
    </assemblyIdentity>
  </dependentAssembly>
</dependency>

<trustInfo xmlns="urn:schemas-microsoft-com:asm.v3">
  <security>
    <requestedPrivileges>
      <requestedExecutionLevel
        level="asInvoker"
        uiAccess="false"/>
    </requestedPrivileges>
  </security>
</trustInfo>

<asmv3:application>
  <asmv3:windowsSettings xmlns="http://schemas.microsoft.com/SMI/2005/WindowsSettings">
    <ms_windowsSettings:dpiAware xmlns:ms_windowsSettings="http://schemas.microsoft.com/SMI/2005/WindowsSettings">false</ms_windowsSettings:dpiAware>
  </asmv3:windowsSettings>
</asmv3:application>

</assembly>

4
Nota: affinché funzioni è necessario modificare il registro. Apri regedit e crea una chiave HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\SideBySide\PreferExternalManifest(DWORD) con valore 1.
ZhekaKozlov

7

Il modo migliore è modificare il manifest exe con qualcosa come sintonizzatore risorse e aggiungere

    <application xmlns="urn:schemas-microsoft-com:asm.v3"><windowsSettings><ms_windowsSettings:dpiAware xmlns:ms_windowsSettings="http://schemas.microsoft.com/SMI/2005/WindowsSettings" xmlns="http://schemas.microsoft.com/SMI/2005/WindowsSettings">false</ms_windowsSettings:dpiAware></windowsSettings></application>        

after dependency per impostare l'exe come dpi inconsapevole. In questo modo il programma sarà un po 'pixelato ma avrà dimensioni confortevoli.



5

La migliore soluzione senza sforzo è scegliere Eclipse Neon. Tutti i bug sono stati corretti come parte di questa versione. https://bugs.eclipse.org/bugs/show_bug.cgi?id=421383


4
Un piccolo avvertimento è che non ha risolto immediatamente il problema, ma l'aggiunta di quanto segue ai vmarg del mio file eclipse.ini ha fatto: -Dswt.autoScale = 200
William Dutton

Ho dovuto aggiungere entrambi -Dswt.autoScale = 200 e disattivare il supporto GTK3 ( env SWT_GTK3=0 eclipse)
Paul Hicks

Ho incluso -Dswt.autoScale=200e la dimensione delle icone è aumentata ma ho perso completamente la qualità della risoluzione. Quindi ho annullato la modifica nel eclipse.inifile. Ma anche dopo aver rimosso la -Dswt.autoScale=200voce, le icone continuano ad apparire grandi nel mio fotone di eclissi
uomo il

"Tutti i bug sono stati risolti ..." mi sembra un po 'esagerato.
iX3

3

-SurfacePro3-

  • Scarica e decomprimi eclipse "Versione a 32 bit".
  • Esegui in "modalità Windows XP".

3

La modalità di compatibilità per Windows Xp, è disponibile solo per la versione di Eclipse a 32 bit e dopo l'esecuzione in questa modalità di compatibilità le icone e il testo avranno le dimensioni giuste, ma sfocate perché sono ridimensionate dalla loro risoluzione nativa alla risoluzione dello schermo e così facendo la qualità è persa.


3

Ho corretto la soluzione di @ Sigh creando uno shellscript ( .sh) (Linux ) per fare qualcosa di simile. Questo è molto rozzo, brutale e richiede l'adozione per il tuo sistema specifico. Utilizzare a proprio rischio. Potrebbe interrompere l'intera installazione. Effettua backup delle cartelle prima di eseguire questo script. Lo script può essere migliorato.

#!/bin/bash

for J in *.jar
do
        echo "Copying $J..."
        mkdir -p "/tmp/$J"
        cp "$J" "/tmp/$J/"
        cd "/tmp/$J"

        echo "Extracting $J..."
        jar xf "$J"
        rm "$J"

        echo "Processing images..."
        find . -name "*.gif" -exec convert {} -resize 200% {} \;

        echo "Compressing $J..."
        if [ `ls .[^.]* 2>/dev/null | wc -l` = 0 ]
        then
                jar cf "$J" *
        else
                jar cf "$J" * .[!.]*
        fi
        cd -
        mv $J{,-bak}
        mv "/tmp/$J/$J" .
        rm -rf "/tmp/$J"

        echo "Done."
        echo ""
done

Eseguilo in /opt/eclipse/pluginse ~/.eclipse/org.eclipse.platform_4.x.x/plugins(o qualunque siano i percorsi per la tua installazione). Stessi problemi della soluzione di @ Sigh: questa è una "correzione" brutale e si interrompe dopo ogni aggiornamento o nuova installazione.

Lo script può essere perfezionato:

  • Ignora i file .jar senza / icons / cartella
  • Ridimensiona solo le immagini che sono 16x16 in modo da poterlo eseguire di nuovo dopo ogni aggiornamento / installazione

Richiede imagemagick.


Avvertenze

  • Non funziona su tutte le icone.
    • Qualcuno sa dove sono le altre risorse o perché non vengono ridimensionate? Forse non lo sono .gif?
  • Le icone di Project Explorer sono incasinate.

Le correzioni sono benvenute!


2
Ho realizzato una versione modificata del codice di @ Redsandro che puoi vedere in questa sintesi che semplifica parte dell'attraversamento delle directory, semplifica la gestione dei file temporanei e cerca immagini di dimensioni pari o inferiori a 16 pixel.
gene_wood

@gene_wood usi alcuni comandi bash intelligenti. Ho ancora il problema che le icone sovrapposte (piccole <16px) sulle icone di Project Explorer in qualche modo sembrano enormi (nel mio script originale e di conseguenza nel tuo), oscurando le icone dei file effettivi. Forse dobbiamo ignorare le immagini più grandi o più piccole di 16px. Ad ogni modo, ti dispiace votare la mia risposta? : D
Redsandro

Basato sullo script @gene_wood, scambia il -name "*.gif"con -name '*.png' -o -name '*.gife, per quanto posso vedere, tutte le icone verranno ingrandite.
Marc Johnen

3

Dai un'occhiata a Neon (4.6) M6 - Nuovo e degno di nota , la versione milestone contiene un ridimensionamento automatico per le immagini (ad esempio per la barra degli strumenti).

SWT fornisce il ridimensionamento automatico basato sulla risoluzione

SWT ora ridimensiona automaticamente le immagini su monitor ad alta DPI su Windows e Linux, in modo simile al supporto Retina del Mac su OS X. In assenza di immagini ad alta risoluzione, SWT scalerà automaticamente le immagini disponibili per garantire che le applicazioni basate su SWT come Le eclipse vengono ridimensionate proporzionalmente alla risoluzione del monitor.

inserisci qui la descrizione dell'immagine

Questa funzione può essere disabilitata su Windows e GTK impostando questo argomento VM su false in eclipse.ini o sulla riga di comando dopo -vmargs:

-Dswt.enable.autoScale = false

Il ridimensionamento automatico non può essere disabilitato su Mac poiché è fornito dal sistema operativo.

Avvertenze: siamo consapevoli che alcune immagini ridimensionate hanno un aspetto negativo con fattori di scala inferiori al 200%. Questo sarà migliorato in M7. Inoltre, stiamo lavorando al supporto per immagini con DPI elevato nell'interfaccia utente della piattaforma, in modo che i provider di plug-in possano aggiungere icone con DPI elevato senza apportare modifiche al codice.



O forse questo aiuta, in Eclipse Mars è stata aggiunta l'API per l'alta risoluzione

Sono state aggiunte nuove API per fornire supporto per il rendering di immagini ad alta risoluzione su monitor ad alta risoluzione. Due costruttori sono stati aggiunti alla classe Image. Accettano callback del fornitore di immagini che consentono ai client di fornire versioni delle immagini dipendenti dalla risoluzione:

public interface ImageDataProvider {
  public ImageData getImageData (int zoom);
}
public interface ImageFileNameProvider {
  public String getImagePath (int zoom);
}

A seconda della configurazione del monitor dell'utente, SWT richiederà immagini con il livello di zoom corrispondente. Ecco un esempio che mostra 3 immagini originali, seguite da varianti la cui risoluzione cambia a seconda della risoluzione del monitor: Snippet367.java .

Notare che questo è solo il primo passo per supportare immagini ad alta risoluzione nelle applicazioni basate su SWT ed Eclipse. Sono in corso lavori per l'adozione delle nuove API nella piattaforma. Inoltre, è necessario più lavoro in SWT per supportare adeguatamente il disegno in immagini ad alta risoluzione tramite GC.

API per il supporto di monitor ad alta risoluzione
http://help.eclipse.org/mars/index.jsp?topic=%2Forg.eclipse.platform.doc.isv%2FwhatsNew%2Fplatform_isv_whatsnew.html


Ho appena installato Neon M7 e la modifica del valore di autoscale non ha alcun effetto sulla dimensione dell'icona .. ehh -vmargs -Dswt.autoScale = 300
Kirill Yunussov

2

La seguente soluzione ha funzionato per me

Per prima cosa devi aggiungere questa chiave di registro

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\SideBySide\PreferExternalManifest (DWORD) to 1

Successivamente, un file manifest con lo stesso nome dell'eseguibile deve essere presente nella stessa cartella dell'eseguibile. Il file si chiama eclipse.exe.manifest ed è composto da:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0" xmlns:asmv3="urn:schemas-microsoft-com:asm.v3">
    <description>eclipse</description>
    <trustInfo xmlns="urn:schemas-microsoft-com:asm.v2">
        <security>
            <requestedPrivileges>
                <requestedExecutionLevel xmlns:ms_asmv3="urn:schemas-microsoft-com:asm.v3"
                               level="asInvoker"
                               ms_asmv3:uiAccess="false">
                </requestedExecutionLevel>
            </requestedPrivileges>
        </security>
    </trustInfo>
    <asmv3:application>
        <asmv3:windowsSettings xmlns="http://schemas.microsoft.com/SMI/2005/WindowsSettings">
            <ms_windowsSettings:dpiAware xmlns:ms_windowsSettings="http://schemas.microsoft.com/SMI/2005/WindowsSettings">false</ms_windowsSettings:dpiAware>
        </asmv3:windowsSettings>
    </asmv3:application>
</assembly>

puoi trovare maggiori dettagli qui


2
Quello che ha funzionato per me alla fine è stato l'aggiunta del file manifest a javaw.exe proprio come https://bugs.eclipse.org/bugs/show_bug.cgi?id=421383#c66 say
elysch

1
Grazie, elysch. La creazione di eclipse.exe.manifest ha funzionato per Eclipse Mars.1, ma non per Mars.2. Fare javaw.exe.manifest ha funzionato!
rakensi

2

La seguente modifica funziona perfettamente.

Citando CrazyPenguin 's risposta

"Per quelli, come me, che hanno scoperto che anche sul nuovo Eclipse non era ridimensionato, vedere qui: swt-autoscale-tweaks Fondamentalmente ho aggiunto -Dswt.autoScale = quarter al mio file eclipse.ini."


2

Ho trovato un riferimento che suggeriva di aggiungere quanto segue a eclipse.ini

-Dswt.enable.autoScale=true
-Dswt.autoScale=200
-Dswt.autoScale.method=nearest

Questo ha raddoppiato la dimensione delle icone per me su Windows 10. Sto usando la versione Eclipse: 2020-03 (4.15.0)


1

Grazie Sigh David Levy. Non potrei sviluppare su Eclipse senza il tuo sol'n. Ho dovuto aggiungere un coupla catch (eccezioni) al tuo codice per farlo funzionare:

            while (srcEntries.hasMoreElements()) {
                    ZipEntry entry = (ZipEntry) srcEntries.nextElement();
                    logger.info("Processing zip entry ["+ entry.getName() + "]");

                    ZipEntry newEntry = new ZipEntry(entry.getName());


                    try { outStream.putNextEntry(newEntry); } 
                    ***catch (Exception e) { 
                        logger.error("error: ", e);
                        outStream.closeEntry();
                        continue;*
                    }**

1
Devi farlo funzionare! Potresti compilare un binario o spiegare come farlo funzionare? Vedi anche il commento su GitHub .
Redsandro


1

Quello che ha funzionato per me alla fine è stato l' aggiunta del file manifest a javaw.exe proprio come ha detto Heikki Juntunen su https://bugs.eclipse.org/bugs/show_bug.cgi?id=421383#c66

Le istruzioni su come modificare il registro e creare il file manifest sono state scritte da Matthew Cochrane su https://bugs.eclipse.org/bugs/show_bug.cgi?id=421383#c60 e @KItis hanno scritto le istruzioni qui

Metto qui una copia di quel post:


Per prima cosa devi aggiungere questa chiave di registro

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\SideBySide\PreferExternalManifest (DWORD) to 1

Successivamente, un file manifest con lo stesso nome dell'eseguibile deve essere presente nella stessa cartella dell'eseguibile. Il file si chiama eclipse.exe.manifest ed è composto da:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0" xmlns:asmv3="urn:schemas-microsoft-com:asm.v3">
    <description>eclipse</description>
    <trustInfo xmlns="urn:schemas-microsoft-com:asm.v2">
        <security>
            <requestedPrivileges>
                <requestedExecutionLevel xmlns:ms_asmv3="urn:schemas-microsoft-com:asm.v3"
                               level="asInvoker"
                               ms_asmv3:uiAccess="false">
                </requestedExecutionLevel>
            </requestedPrivileges>
        </security>
    </trustInfo>
    <asmv3:application>
        <asmv3:windowsSettings xmlns="http://schemas.microsoft.com/SMI/2005/WindowsSettings">
            <ms_windowsSettings:dpiAware xmlns:ms_windowsSettings="http://schemas.microsoft.com/SMI/2005/WindowsSettings">false</ms_windowsSettings:dpiAware>
        </asmv3:windowsSettings>
    </asmv3:application>
</assembly>

0

Ecco la mia soluzione Ispirata dalla soluzione di @ Sigh (questa non usa Maven):

https://github.com/gitAmrit/EclipseIconEnlarger/tree/master#eclipseiconenlarger

Funziona cercando tutte le immagini più piccole o uguali a 16x16px e ridimensionandole in base a qualsiasi fattore desiderato dall'utente.

esecuzione dell'utility: java images.EclipseIconEnlarger eclipseBasePath magnificaitonfactor

ad esempio: immagini java.EclipseIconEnlarger C: \ Users \ Amrit \ Codes \ eclipse 2

eclipseBasePath = percorso in cui si trova eclipse.exe, ad esempio C: \ Users \ Amrit \ Codes \ eclipse ingrandificationfactor = fattore di cui l'immagine dovrebbe essere ingrandita, ad esempio 2 = doppio


Si prega di aggiungere almeno un riepilogo della soluzione nella risposta. Le risposte solo ai link sono considerate cattive pratiche stackoverflow.com/help/how-to-answer
Manos Nikolaidis,

Grazie. Funziona perfettamente e cambia le icone sul posto. Basta eseguire una volta ogni tanto e tutte le icone rimangono grandi.
Milo van der Zee

0

Ecco un'altra soluzione da riga di comando, ma funziona per Windows.

Richiede winrar installato (modifica la linea di winrar impostata in modo che punti all'installazione di winrar).

Richiede anche l'installazione di imagemagick e l'aggiunta del suo percorso nella riga di comando.

Un ultimo commento è che consiglio di eseguirlo prima di aprire Eclipse per la prima volta (cioè, nuova installazione). Ci sono icone che vengono decompresse automaticamente dai jar e salvate in eclipse / configuration / org.eclips.osgi / ... (potenzialmente tra le altre cartelle) e la modifica del file .jar impedisce che l'icona venga ridimensionata. Potresti essere in grado di eliminare questa cartella e potrebbe essere estratta di nuovo, ma non posso confermare.

Per eseguire, basta creare un file doubler.bat nella directory eclipse / plugins e dovrebbe ridimensionare qualsiasi icona più piccola di 32x32 a quella dimensione proporzionata.

Ecco il codice:

@echo off
set winrar="C:\Program Files\WinRAR\winrar.exe"
set startpath=%~dp0

::All *.jar in this folder
FOR %%G in (*.jar) do (call :EachJar "%%G")

GOTO :eof

:EachJar
  ::echo %1
  set nameWOQuotes=%~1
  mkdir "tmp\%nameWOQuotes%"
  ::copy "%nameWOQuotes%" "tmp\%nameWOQuotes%.bak" >NUL
  %winrar% x -inul "%nameWOQuotes%" *.jpg *.gif *.png *.tif *.tiff "tmp\%nameWOQuotes%\"
  ::pause
  cd "tmp\%nameWOQuotes%"
  FOR /R .\ %%H in (*.jpg *.gif *.png *.tif *.tiff) do ( 
    ::echo %nameWOQuotes%-%%~nxH >> "%startpath%\output.txt"
    identify "%%H" >> "%startpath%\output.txt"
   convert "%%H" -resize 32x32^< "%%H" )
  %winrar% a -r -u "%startpath%\%nameWOQuotes%" "*"
  cd "%startpath%"
  rmdir /s /q "tmp\%nameWOQuotes%"
Goto :eof

Crea un file output.txt e inserisce tutti i metadati delle immagini ORIGINALI prima che venga convertito, indipendentemente dal fatto che abbia cambiato dimensione o meno.


0

Se non desideri installare una versione più recente di eclipse

Come accennato qui , nel file eclipse.init aggiungi -Dswt.autoScale=exactdopo -vmargse sei a posto.

Qui exactridimensiona le icone allo zoom nativo. Ma dovrai regolare con le icone sfocate e frastagliate.


0

Ho avuto questo problema quando ho cambiato la mia lingua predefinita di Windows 10 da Eng in Italiano, con Eclipse installato quando la lingua predefinita era Eng. Ripristinare la lingua di Windows in Eng e riavviare ha risolto il problema. Non so cosa sia successo, Windows rinomina alcune cartelle come C: \ Users traducendole nella tua lingua predefinita (es. C: \ Utenti) e forse questo sta causando problemi.


-1

La soluzione di cui sopra di Jae ha funzionato per me. La soluzione manifest non ha funzionato per me. Grazie Jae.

Configurazione: sul mio laptop Windows 8.1 64 bit non tablet ho scaricato eclipse 64 bit con jdk 64 bit.

  1. Fare clic con il tasto destro del mouse sul desktop per accedere alla risoluzione dello schermo e abbassare la risoluzione dello schermo dal livello 3000 a 2048 x 1152.
  2. Fare clic sul collegamento ingrandisci o rimpicciolisce il testo e altri elementi e modificalo in grande 150% invece che extra extra grande - 250%.
  3. Disconnesso e accesso di nuovo.
  4. Riavvia Eclipse e le icone sono ora visibili anche se è un po 'più piccolo, ma ora molto più leggibile.
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.