Soubor JAWA OC jde: jak rozpoznat jeho typ a správně jej otevřít

Soubor s názvem JAWA OC může označovat různé typy souborů, protože samotný název bez přípony neurčuje jeho formát. Pro správné otevření je rozhodující především přípona souboru, například .jar, .java, .class, .dwg, .dxf nebo .mi.

Pokud jde o soubor .jar, jedná se o Java Archive File, který může obsahovat aplikační knihovny, zdrojové soubory, zkompilované třídy i manifest. Pokud jde o soubor .java, obsahuje zdrojový kód napsaný v programovacím jazyce Java, zatímco soubor .class obsahuje zkompilovaný bajtkód určený pro Java Virtual Machine.

Proč samotný název JAWA OC nestačí

Přípona souboru je sada tří nebo čtyř postav na konci souboru, v tomto případě, .jar. Přípony souborů řeknu, jaký typ souboru je to, a řekni Windows jaké programy lze otevřít.

Windows často spojuje výchozí program pro každou příponu souboru, takže při poklepání na soubor, program se spustí automaticky. Když tento program je již na vašem počítači, můžete občas se vyskytne chyba při pokusu otevřít příslušný soubor.

Nejprve proto zobrazte úplný název souboru včetně přípony a podle ní určete, jaký software je vhodný. Přítomnost slov JAWA nebo OC v názvu sama o sobě neříká, zda jde o Java archiv, zdrojový kód, obraz technického výkresu nebo jiný datový soubor.

Soubor JAWA OC s příponou .jar

Soubor Java Archive je také nazýván soubor JAR, a tyto soubory Java archivu jsou integrovány se specifikacemi kompilace proprietární Oracle. Tyto soubory Java archivu jsou také realizovány specifikace i proprietární Oracle kódování formátu JAR.

JRE (Java Runtime Environment) používá data uložená v těchto souborů JAR jako referenční údaje nebo aplikační knihovny programu vyvinutého v Javě a jsou určeny pro provoz v platformách, kde je povolena Java Runtime Environment. Obsah souboru JAR může zahrnovat rámcovou kód vyvinutý pro inicializaci a spouštět programy v jazyce Java.

Tyto JAR soubory mohou být také vytvořeny jako samostatné aplikace pro mobilní telefony, tabletové počítače a stolních nebo přenosných počítačů instalovaných s Java Runtime Environment. Program zdroje mohou být rovněž zahrnuty do obsahu souboru JAR a soubor manifestu může být volitelně zadat v souboru JAR.

Některé webové prohlížeče jsou integrovány s podporou Java Runtime Environment, a tak mohou být použity pro přístup k datům uloženým v těchto souborů JAR. Java Virtual Machine je také známý jako Java Runtime Environment.

PříponaVýznamTypické použití
.jarJava Archive FileJava aplikace, knihovny, zkompilované třídy a manifest
.javaJava Source CodeZdrojový kód programu v jazyce Java
.classJava byte codeZkompilovaná Java třída
.dwgCAD souborTechnický výkres
.dxfCAD výměnný formátImport a export vektorové grafiky

Jak otevřít soubor .jar

Spuštění .jar soubor, nebo jakýkoliv jiný soubor na vašem PC, poklepáním jej. Pokud jsou vaše asociace souborů nastaven správně, aplikace, která je možno otevřít svůj .jar Soubor se otevře ji.

Je možné, budete muset stáhnout nebo zakoupit správnou aplikaci. Je také možné, že máte správnou aplikaci na vašem PC, ale .jar Soubory se dosud s ním spojené.

V tomto případě, když se pokusíte otevřít .jar souboru, můžete říct, Windows, která aplikace je ten správný pro daný soubor. Od té doby, otevření .jar Soubor se otevře správnou aplikaci.

Soubor JAR může být spuštěn pouze tehdy, pokud obsahuje spustitelnou aplikaci a systém má k dispozici vhodné prostředí Java. Pokud jde pouze o knihovnu, archiv nebo datový balíček, nemusí být jeho otevření poklepáním správným postupem.

Bezpečnost při otevírání souboru JAR

JAR soubor může obsahovat kód vyvinutý pro inicializaci a spuštění programu v jazyce Java. Proto je vhodné spouštět pouze soubory z důvěryhodného zdroje a před spuštěním ověřit jejich původ.

Dávejte pozor, abyste přejmenovat příponu na .jar soubory, nebo jiné soubory. To se nezmění typ souboru. Pouze speciální konverzní software může změnit soubor z jednoho typu souboru do druhého.

Soubor JAWA OC s příponou .java

Soubor JAVA je zdrojový kód specifický program napsaný v programovacím jazyce Java. To může být jedním z mnoha zdrojových souborů v jazyce Java odkazuje v rámci programového projektu, nebo může obsahovat veškerý zdrojový kód do jednoho souboru.

JAVA soubory jsou kategorizovány hlavně jako Developer Files. Přípona souboru JAVAje podporována Windows, Mac a Linux.

Zdrojový soubor .java je obyčejný textový soubor, který lze zobrazit v textovém editoru nebo vývojovém prostředí. Samotné otevření souboru však neznamená jeho spuštění, protože zdrojový kód je nejprve nutné přeložit do bajtkódu.

Potíže při otevírání souborů .java

Při pokusu o otevření JAVA se zobrazí chybová zpráva, například „%%os%% nelze otevřít soubory JAVA“. Pokud tomu tak je, je to obvykle způsobeno skutečností, že v počítači nemáte nainstalovanou aplikaci Microsoft Notepad pro systém %%os%%.

To zabrání poklepání a otevřete soubor JAVA, protože operační systém neví, jak s ním zacházet. Tip: Pokud nemáte nainstalován Microsoft Notepad a víte o jiném programu k otevření souboru JAVA, můžete jej zkusit otevřít výběrem z programů uvedených v části „Show Apps“.

V některých případech můžete mít novější (nebo starší) verzi souboru Java Source Code, který není podporován nainstalovanou verzí aplikace. Pokud máte nainstalovanou nesprávnou verzi aplikace Microsoft Notepad, budete muset nainstalovat správnou verzi.

Dokonce i při správné verzi aplikace Microsoft Notepad můžete stále zaznamenat potíže s otevíráním souborů JAVA. V systému %%os%% mohou nastat externí problémy, které způsobují tyto chyby při otevírání souborů.

  • Typ souboru JAVA
  • Položky registru jsou chybné
  • Odstranění popisu souboru JAVA z registru omylem
  • Poškozená instalace aplikace Microsoft Notepad nebo jiného programu souvisejícího s JAVA
  • Poškození souboru ovlivňující váš soubor JAVA
  • Soubor JAVA poškozený malwarem nelze otevřít
  • Ovladače zařízení pro hardware související s JAVA jsou zastaralé
  • Nedostatečné systémové prostředky k úspěšnému otevření souborů Java Source Code

Práce se souborem .class

Soubor .class obsahuje zkompilovaný Java bajtkód. Nejde o původní zdrojový soubor, ale o výsledek překladu programu, který může načíst Java Virtual Machine.

Java Decompiler project aims to develop tools in order to decompile and analyze Java 5 “byte code” and the later versions.

JD-Core is a library that reconstructs Java source code from one or more “.class” files. JD-Core may be used to recover lost source code and explore the source of Java runtime libraries.

New features of Java 5, such as annotations, generics or type “enum”, are supported. JD-GUI and JD-Eclipse include JD-Core library.

JD-GUI pro prohlížení Java tříd

JD-GUI is a standalone graphical utility that displays Java source codes of “.class” files. You can browse the reconstructed source code with the JD-GUI for instant access to methods and fields.

JD-GUI supports Drag and Drop. JD-GUI supports CLASS, JAR, WAR, EAR, AAR, KAR, JMOD & ZIP files.

JD-GUI displays color coded Java source code. JD-GUI allows you to browse the CLASS files and Java modules hierarchy.

JD-GUI lets you drag and drop LOG files, decompile CLASS files, and display the line of code that appears in Java stack traces.

JD-Core, JD-GUI & JD-Eclipse are open source projects released under the GPLv3 License. JD-Core and JD-GUI are written in Java.

NástrojÚčelVstup
JD-CoreKnihovna pro rekonstrukci zdrojového kóduJeden nebo více souborů .class
JD-GUISamostatné grafické prohlížení kóduCLASS, JAR, WAR, EAR, AAR, KAR, JMOD a ZIP
JD-EclipsePlug-in pro platformu EclipseJava třídy při ladění
JadDekompilace Java class souborůJeden nebo více souborů .class

JD-Eclipse při ladění v Eclipse

JD-Eclipse is a plug-in for the Eclipse platform. It allows you to display all the Java sources during your debugging process, even if you do not have them all.

Instalace probíhá stažením ZIP souboru JD-Eclipse, spuštěním Eclipse a volbou „Help > Install New Software.“

Drag and drop ZIP file on dialog windows, Check "Java Decompiler Eclipse Plug-in", Click on "Next" and "Finish" buttons.

A warning dialog windows appear because "org.jd.ide.eclipse.plugin_x.y.z.jar" is not signed. Click on "Install anyway" button.

Dekompilátor Jad

Jad je Java dekompilátor, tj. program, který čte jeden nebo více Java class souborů a konvertuje je zpět do zdrojových souborů java, jež mohou být většinou (viz též dále) opět zkompilovány.

Jad je napsán celý v C++ a většinou pracuje rychleji než dekompilátory napsané v Javě. Jad je zdarma pouze pro nekomerční použití.

Typická použití Jad

  • obnova ztracených zdrojových kódů
  • zkoumání zdrojových kódů Java runtime knihoven
  • zpětný Java překladač

Instalace a spuštění Jad

Jad nepoužívá JVM pro svůj běh, není nutná žádná instalace. Stačí rozbalit soubor jad.zip, který obsahuje 2 soubory:

  • spustitelný soubor "jad.exe" (Windows) nebo "jad" (Linux)
  • textový soubor "readme.txt" s nápovědou

Pro dekompilaci jednoho class souboru Priklad1.class stačí napsat:

jad Priklad1.class

Vznikne soubor Priklad1.jad v aktuálním adresáři. Jestliže daný soubor již existuje, program se zeptá, zda jej má přepsat.

Dekompilace všech class souborů v aktuálním adresáři:

jad *.class

Dekompilace všech class souborů v podadresářích:

jad adr1/**/*.class

Nejdůležitější parametry Jad

  • -o Přepíše již existující soubor s příponou.jad bez varování a následného schválení.
  • -sjava Výstupní soubor má příponu .java.
  • -p [soubor class] > [jméno výstupního souboru] Výsledek činnosti jad je posílán na standardní výstup.
  • -d [název adresáře] Umístí výstupní soubory do uvedeného adresáře.
  • -a Přidá do výstupního souboru zdrojový kód v JVM bytecode.

Např.: jad -sjava priklad1.class vytvoří soubor priklad1.java

Např. jad -p priklad1.class > pokus.java vytvoří soubor pokus.java.

Příkaz jad -o -r -sjava -d src tree/**/*.class dekompiluje všechny soubory v podadresářích adresáře tree a umístí výstupní soubory do adresáře src podle názvů balíků.

Vzniklé zdrojové soubory budou mít příponu .java (parametr -sjava) a budou-li existovat jejich starší verze, budou bez varování přepsány (parametr -o).

Omezení dekompilace

Program Jad dokáže celkem spolehlivě zrekonstruovat původní kód. Zrekonstruovaný kód se liší od původního v několika detailech, jako např. se změní pořadí deklarací atributů a metod, vnitřní anonymní třídy jsou umístěny do konstruktoru vnější třídy, akcentované znaky jsou nahrazeny buď zápisem hodnoty v Unicode nebo oktalově, názvy lokálních proměnných nebo formálních parametrů jsou pozměněny atp.

I přes tyto malé změny je výsledný zdrojový kód velmi dobře čitelný (možná někdy lépe, než původní zdrojový kód).

Jestliže daný soubor obsahuje vnitřní třídy, dekompilátor může mít omezení při jejich rekonstrukci. Anonymní vnitřní třídy umístí do konstruktoru dané vnější třídy, což pak většinou znamená, že zdrojový soubor nelze okamžitě přeložit programem javac.exe, případně jej lze přeložit, ale výsledný program není funkční.

Technické výkresy a soubory DWG, DXF nebo MI

Pokud se úplný název souboru JAWA OC končí příponou .dwg nebo .dxf, nejde o Java soubor, ale o soubor používaný v CAD programech. Takový soubor může obsahovat logo Jawa nebo jiný vektorový technický návrh.

V souvislosti s logem Jawy se objevuje požadavek na soubor v dwg/dxf formátu, aby jej bylo možné použít jako podklad pro vypálení na plech.

Soubor s příponou .mi není totéž co soubor DWG. Pro jeho otevření je nutné použít program, který daný formát podporuje, případně jej nejprve importovat do vhodného grafického nebo CAD programu.

Stačí naimportovat . já dělam v CDR po importu zkontrolovat uzly a je všechno OK.

Otevřeš *.mi ?

Tohle ale není dwg (tedy cadovský soubor).

Java soubory a práce s cestami

V Javě jsou k práci se soubory k dispozici dvě různá API: starší java.io.*, jehož středobodem je třída File, a novější java.nio.*, který se točí kolem tříd Path a Files.

Obě tyto API spolu koexistují. Ačkoliv se doporučuje v novém kódu používat nové API, tak se v praxi často setkáme s potřebou použít i to starší, takže se hodí znát obě.

Základem úspěšné práce se soubory v Javě je mít správně vytvořenou instanci třídy Path (při použití novějšího API), nebo File (při použití staršího API). Tato instance třídy reprezentuje cestu k souboru, se kterým chceme pracovat.

Vytvoření cesty pomocí Path

K vytvoření instance třídy Path slouží statická metoda of() volaná na třídě Path:

Path cesta = Path.of(cesta_k_souboru);

Například cestu k souboru soubor.txt, v podadresáři itnetwork, v našem domovském adresáři definujeme takto:

Path cesta = Path.of(System.getProperty("user.home"), "itnetwork", "soubor.txt");

V kódu neřešíme specifické cesty k souboru pro jednotlivé operační systémy. System.getProperty() dosadí správnou cestu pro platformu, na které je aplikace spuštěna.

Instance třídy Path je ukazatel na místo na disku, kde může, ale nemusí daný soubor být. Taktéž nemusí existovat všechny adresáře v cestě k souboru.

Kontrola adresářů pomocí Files

K tomuto účelu slouží statická metoda createDirectories() ze třídy Files:

Path cesta = Path.of(System.getProperty("user.home"), "itnetwork", "soubor.txt");

Files.createDirectories(cesta.getParent());

Metoda getParent() vrací adresář, ve kterém se nachází soubor.txt. V našem příkladu je to adresář itnetwork.

Metoda createDirectories() vytvoří celou potřebnou hierarchii adresářů včetně itnetwork. Pokud by některý adresář již existoval, metoda createDirectories() vytvoření adresáře přeskočí bez vyvolání výjimky.

Vytvoření cesty pomocí File

Při použití staršího API pracujeme s třídou File. Vytvoření samotné instance je zde velmi podobné:

File cesta = new File("cesta_k_souboru");

Na rozdíl od třídy Path, třída File očekává cestu k souboru jako jeden String.

Naši cestu k souboru soubor.txt, v podadresáři itnetwork, v našem domovském adresáři zde definujeme takto:

File cesta = new File(System.getProperty("user.home") + File.separator + "itnetwork" + File.separator + "soubor.txt");

Pomocí File.separator vytvoříme platnou cestu pro jakoukoliv platformu.

Stejně jako v případě Path i nyní potřebujeme zkontrolovat, zda existují všechny definované adresáře. K tomu využijeme metodu mkdirs(), kterou tentokrát zavoláme na instanci třídy File:

File cesta = new File(System.getProperty("user.home") + File.separator + "itnetwork" + File.separator + "soubor.txt");

cesta.getParentFile().mkdirs();

Převod mezi Path a File

Třídy Path a File nabízí snadnou konverzi mezi sebou.

Pro převedení cesty k souboru z instance třídy Path na instanci třídy File, zavoláme metodu toFile() na instanci třídy Path:

Path path = Path.of(. );

File file = path.toFile();

Pro převedení cesty k souboru z instance třídy File na instanci třídy Path, zavoláme metodu toPath() na instanci třídy File:

File file = new File(. );

Path path = file.toPath();

Cesty k souborům v různých operačních systémech

Domovský adresář uživatele se nachází v každém systému na jiném místě. Jelikož se snažíme tvořit multiplatformní aplikace, vyhneme se specifickým cestám k souborům v jednotlivých operačních systémech.

Domovský adresář uživatele zjistíme tímto kódem:

System.getProperty("user.home");

SystémPříklad domovského adresářeOddělovač
WindowsC:\Users\vase_jmeno\Zpětné lomítko \
Linux/home/vase_jmeno/Dopředné lomítko /
MacOS/Users/vase_jmenoDopředné lomítko /

V systémech Windows výše uvedený kód vrátí: C:\Users\vase_jmeno\

Všimněme si oddělovače adresářů \, kterým je zpětné lomítko. Windows jsou také specifické v označování disků písmeny (C, D, . ).

V systémech Linux výše uvedený kód vrátí: /home/vase_jmeno/

Operační systémy, které se hlásí k unixové tradici, používají pro oddělovač adresářů dopředné lomítko /.

V systému MacOS výše uvedený kód vrátí: /Users/vase_jmeno

Systém MacOS používá pro oddělovač adresářů také dopředné lomítko /.

noimgs

tags: #soubor #jawa #oc #jde