<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ja">
	<id>https://wiki.archlinux.jp/index.php?action=history&amp;feed=atom&amp;title=Java_%E3%81%AE_binfmt_misc</id>
	<title>Java の binfmt misc - 版の履歴</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.archlinux.jp/index.php?action=history&amp;feed=atom&amp;title=Java_%E3%81%AE_binfmt_misc"/>
	<link rel="alternate" type="text/html" href="https://wiki.archlinux.jp/index.php?title=Java_%E3%81%AE_binfmt_misc&amp;action=history"/>
	<updated>2026-04-30T18:30:52Z</updated>
	<subtitle>このウィキのこのページに関する変更履歴</subtitle>
	<generator>MediaWiki 1.44.3</generator>
	<entry>
		<id>https://wiki.archlinux.jp/index.php?title=Java_%E3%81%AE_binfmt_misc&amp;diff=37035&amp;oldid=prev</id>
		<title>Kusanaginoturugi: /* ラッパースクリプト */ 削除と文言追加</title>
		<link rel="alternate" type="text/html" href="https://wiki.archlinux.jp/index.php?title=Java_%E3%81%AE_binfmt_misc&amp;diff=37035&amp;oldid=prev"/>
		<updated>2024-04-16T10:02:40Z</updated>

		<summary type="html">&lt;p&gt;&lt;span class=&quot;autocomment&quot;&gt;ラッパースクリプト: &lt;/span&gt; 削除と文言追加&lt;/p&gt;
&lt;a href=&quot;https://wiki.archlinux.jp/index.php?title=Java_%E3%81%AE_binfmt_misc&amp;amp;diff=37035&amp;amp;oldid=33812&quot;&gt;差分を表示&lt;/a&gt;</summary>
		<author><name>Kusanaginoturugi</name></author>
	</entry>
	<entry>
		<id>https://wiki.archlinux.jp/index.php?title=Java_%E3%81%AE_binfmt_misc&amp;diff=33812&amp;oldid=prev</id>
		<title>Kusanaginoturugi: /* ノート */ 記事を更新</title>
		<link rel="alternate" type="text/html" href="https://wiki.archlinux.jp/index.php?title=Java_%E3%81%AE_binfmt_misc&amp;diff=33812&amp;oldid=prev"/>
		<updated>2023-09-02T11:41:58Z</updated>

		<summary type="html">&lt;p&gt;&lt;span class=&quot;autocomment&quot;&gt;ノート: &lt;/span&gt; 記事を更新&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;ja&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← 古い版&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;2023年9月2日 (土) 20:41時点における版&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;363行目:&lt;/td&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;363行目:&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* 一部資料では &#039;&#039;binfmt_misc&#039;&#039; はモジュールとして紹介されていますが Arch は標準カーネルに組み込んでビルドします。&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* 一部資料では &#039;&#039;binfmt_misc&#039;&#039; はモジュールとして紹介されていますが Arch は標準カーネルに組み込んでビルドします。&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* 上記の設定は Sun JRE と OpenJDK 6 で動作を確認しています。&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* 上記の設定は Sun JRE と OpenJDK 6 で動作を確認しています。&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* &#039;&#039;binfmt_misc&#039;&#039; は他のファイルタイプでも使うことができます。例えば [[Wine]] プログラムを明示的に指定せずに DOS/Windows のファイルを実行する&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;方法&lt;/del&gt;は&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt; [[Wine#Win16/Win32 バイナリ&lt;/del&gt;の&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;イ&lt;/del&gt;ン&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;タプ&lt;/del&gt;リ&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;タと&lt;/del&gt;し&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;て Wine を使う]]を見てください&lt;/del&gt;。&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* &#039;&#039;binfmt_misc&#039;&#039; は他のファイルタイプでも使うことができます。例えば [[Wine]] プログラムを明示的に指定せずに DOS/Windows のファイルを実行する&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;に&lt;/ins&gt;は&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;次&lt;/ins&gt;の&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;登録エ&lt;/ins&gt;ン&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;ト&lt;/ins&gt;リ&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;を追加&lt;/ins&gt;し&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;ます&lt;/ins&gt;。&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-empty diff-side-deleted&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt; # binfmt_misc support for DOS / Windows applications via Wine&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-empty diff-side-deleted&quot;&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt; echo &#039;:DOSWin:M::MZ::/usr/bin/wine:&#039; &amp;gt; /proc/sys/fs/binfmt_misc/register&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;

&lt;!-- diff cache key bnbest_wiki:diff:1.41:old-33811:rev-33812:wikidiff2=table:1.14.1:bc2a06be --&gt;
&lt;/table&gt;</summary>
		<author><name>Kusanaginoturugi</name></author>
	</entry>
	<entry>
		<id>https://wiki.archlinux.jp/index.php?title=Java_%E3%81%AE_binfmt_misc&amp;diff=33811&amp;oldid=prev</id>
		<title>Kusanaginoturugi: 英語版をもとに修正</title>
		<link rel="alternate" type="text/html" href="https://wiki.archlinux.jp/index.php?title=Java_%E3%81%AE_binfmt_misc&amp;diff=33811&amp;oldid=prev"/>
		<updated>2023-09-02T11:39:12Z</updated>

		<summary type="html">&lt;p&gt;英語版をもとに修正&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;ja&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← 古い版&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;2023年9月2日 (土) 20:39時点における版&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;10行目:&lt;/td&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;10行目:&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;binfmt_misc を使うことで PATH が通っていれば以下のように実行できるようになります:&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;binfmt_misc を使うことで PATH が通っていれば以下のように実行できるようになります:&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt; MyProgram.jar&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt; MyProgram.jar&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;または:&lt;/div&gt;&lt;/td&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-empty diff-side-added&quot;&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt; MyProgram.exe&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt; MyProgram.exe&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br /&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br /&gt;&lt;/td&gt;
&lt;/tr&gt;

&lt;!-- diff cache key bnbest_wiki:diff:1.41:old-27022:rev-33811:wikidiff2=table:1.14.1:bc2a06be --&gt;
&lt;/table&gt;</summary>
		<author><name>Kusanaginoturugi</name></author>
	</entry>
	<entry>
		<id>https://wiki.archlinux.jp/index.php?title=Java_%E3%81%AE_binfmt_misc&amp;diff=27022&amp;oldid=prev</id>
		<title>Kusanaginoturugi: カテゴリを修正</title>
		<link rel="alternate" type="text/html" href="https://wiki.archlinux.jp/index.php?title=Java_%E3%81%AE_binfmt_misc&amp;diff=27022&amp;oldid=prev"/>
		<updated>2022-08-25T02:06:55Z</updated>

		<summary type="html">&lt;p&gt;カテゴリを修正&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;ja&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← 古い版&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;2022年8月25日 (木) 11:06時点における版&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;1行目:&lt;/td&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;1行目:&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;{{DISPLAYTITLE:Java の binfmt_misc}}&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;{{DISPLAYTITLE:Java の binfmt_misc}}&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[[Category:&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;エミュレー&lt;/del&gt;シ&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;ョン&lt;/del&gt;]]&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[[Category:シ&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;ステム管理&lt;/ins&gt;]]&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[[en:Binfmt misc for Java]]&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[[en:Binfmt misc for Java]]&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[[wikipedia:binfmt_misc|Wikipedia]] より:&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[[wikipedia:binfmt_misc|Wikipedia]] より:&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;

&lt;!-- diff cache key bnbest_wiki:diff:1.41:old-11225:rev-27022:wikidiff2=table:1.14.1:bc2a06be --&gt;
&lt;/table&gt;</summary>
		<author><name>Kusanaginoturugi</name></author>
	</entry>
	<entry>
		<id>https://wiki.archlinux.jp/index.php?title=Java_%E3%81%AE_binfmt_misc&amp;diff=11225&amp;oldid=prev</id>
		<title>Kusakata: /* シンプルなソリューション */</title>
		<link rel="alternate" type="text/html" href="https://wiki.archlinux.jp/index.php?title=Java_%E3%81%AE_binfmt_misc&amp;diff=11225&amp;oldid=prev"/>
		<updated>2018-01-05T09:25:03Z</updated>

		<summary type="html">&lt;p&gt;&lt;span class=&quot;autocomment&quot;&gt;シンプルなソリューション&lt;/span&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;ja&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← 古い版&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;2018年1月5日 (金) 18:25時点における版&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;338行目:&lt;/td&gt;
  &lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;338行目:&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br /&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br /&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;==シンプルなソリューション==&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;==シンプルなソリューション==&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;大抵な場合はシンプルなソリューションで問題な&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;き&lt;/del&gt;機能します。{{ic|/etc/binfmt.d/java.conf}} ファイルを作成:&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;大抵な場合はシンプルなソリューションで問題な&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;く&lt;/ins&gt;機能します。{{ic|/etc/binfmt.d/java.conf}} ファイルを作成:&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt; :Java:E::class::/usr/local/bin/javawrapper:&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt; :Java:E::class::/usr/local/bin/javawrapper:&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;{{ic|/usr/local/bin/javawrapper}} ファイルを作成:&lt;/div&gt;&lt;/td&gt;
  &lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;
  &lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;{{ic|/usr/local/bin/javawrapper}} ファイルを作成:&lt;/div&gt;&lt;/td&gt;
&lt;/tr&gt;

&lt;!-- diff cache key bnbest_wiki:diff:1.41:old-11224:rev-11225:wikidiff2=table:1.14.1:bc2a06be --&gt;
&lt;/table&gt;</summary>
		<author><name>Kusakata</name></author>
	</entry>
	<entry>
		<id>https://wiki.archlinux.jp/index.php?title=Java_%E3%81%AE_binfmt_misc&amp;diff=11224&amp;oldid=prev</id>
		<title>Kusakata: ページの作成:「{{DISPLAYTITLE:Java の binfmt_misc}} Category:エミュレーション en:Binfmt misc for Java Wikipedia より: :&quot;&#039;&#039;binfmt_misc は任...」</title>
		<link rel="alternate" type="text/html" href="https://wiki.archlinux.jp/index.php?title=Java_%E3%81%AE_binfmt_misc&amp;diff=11224&amp;oldid=prev"/>
		<updated>2018-01-05T09:23:08Z</updated>

		<summary type="html">&lt;p&gt;ページの作成:「{{DISPLAYTITLE:Java の binfmt_misc}} &lt;a href=&quot;/index.php/%E3%82%AB%E3%83%86%E3%82%B4%E3%83%AA:%E3%82%A8%E3%83%9F%E3%83%A5%E3%83%AC%E3%83%BC%E3%82%B7%E3%83%A7%E3%83%B3&quot; title=&quot;カテゴリ:エミュレーション&quot;&gt;Category:エミュレーション&lt;/a&gt; &lt;a href=&quot;https://wiki.archlinux.org/title/Binfmt_misc_for_Java&quot; class=&quot;extiw&quot; title=&quot;en:Binfmt misc for Java&quot;&gt;en:Binfmt misc for Java&lt;/a&gt; &lt;a href=&quot;https://en.wikipedia.org/wiki/binfmt_misc&quot; class=&quot;extiw&quot; title=&quot;wikipedia:binfmt misc&quot;&gt;Wikipedia&lt;/a&gt; より: :&amp;quot;&amp;#039;&amp;#039;binfmt_misc は任...」&lt;/p&gt;
&lt;p&gt;&lt;b&gt;新規ページ&lt;/b&gt;&lt;/p&gt;&lt;div&gt;{{DISPLAYTITLE:Java の binfmt_misc}}&lt;br /&gt;
[[Category:エミュレーション]]&lt;br /&gt;
[[en:Binfmt misc for Java]]&lt;br /&gt;
[[wikipedia:binfmt_misc|Wikipedia]] より:&lt;br /&gt;
:&amp;quot;&amp;#039;&amp;#039;binfmt_misc は任意の実行ファイル形式を認識して特定のユーザースペースアプリケーション (エミュレータや仮想マシンなど) で実行できる Linux カーネルの機能である。&amp;#039;&amp;#039;&amp;quot;&lt;br /&gt;
&lt;br /&gt;
分かりやすく説明すると、普通は [[Java]] の jar ファイルや [[Mono]] の exe ファイルはコマンドラインから以下のように実行するところ:&lt;br /&gt;
 java -jar /path/to/MyProgram.jar&lt;br /&gt;
 mono /path/to/MyProgram.exe&lt;br /&gt;
binfmt_misc を使うことで PATH が通っていれば以下のように実行できるようになります:&lt;br /&gt;
 MyProgram.jar&lt;br /&gt;
または:&lt;br /&gt;
 MyProgram.exe&lt;br /&gt;
&lt;br /&gt;
この記事の情報は Linux のカーネルソースツリーの &amp;#039;&amp;#039;Documentation&amp;#039;&amp;#039; サブディレクトリに存在する {{ic|binfmt_misc.txt}} と {{ic|java.txt}} を基にしています。&lt;br /&gt;
&lt;br /&gt;
==セットアップ==&lt;br /&gt;
===binfmt_misc のマウント===&lt;br /&gt;
一時的にマウントするには:&lt;br /&gt;
 # mount binfmt_misc -t binfmt_misc /proc/sys/fs/binfmt_misc&lt;br /&gt;
永続的にマウントするには [[fstab]] に以下の行を追加:&lt;br /&gt;
 none  /proc/sys/fs/binfmt_misc binfmt_misc defaults 0 0&lt;br /&gt;
&lt;br /&gt;
===binfmt_misc でファイルタイプを登録===&lt;br /&gt;
Arch ではファイルタイプの登録は &amp;#039;&amp;#039;&amp;#039;systemd-binfmt&amp;#039;&amp;#039;&amp;#039; によって処理されます。&lt;br /&gt;
&lt;br /&gt;
Binfmt を登録する行を {{ic|/etc/binfmt.d}} のファイルに記述してください。&lt;br /&gt;
&lt;br /&gt;
行の中身は {{ic|Documentation/binfmt_misc.txt}} ファイルで説明されています。&lt;br /&gt;
&lt;br /&gt;
以下の行は明示的に java コマンドを呼び出さなくても java バイナリを実行するための登録ファイルを作成します (Java のインストールが必要です)。最初の2行は Java のクラスと jar ファイルを次のセクションで説明しているラッパースクリプトにリダイレクトしています。最後のエントリは Java アプレットを通常通りに実行します。&lt;br /&gt;
 # binfmt_misc support for Java applications:&lt;br /&gt;
 echo &amp;#039;:Java:M::\xca\xfe\xba\xbe::/usr/local/bin/javawrapper:&amp;#039; &amp;gt; /etc/binfmt.d/Java.conf&lt;br /&gt;
 # binfmt_misc support for executable Jar files:&lt;br /&gt;
 echo &amp;#039;:ExecutableJAR:E::jar::/usr/local/bin/jarwrapper:&amp;#039; &amp;gt; /etc/binfmt.d/ExecutableJAR.conf&lt;br /&gt;
 # binfmt_misc support for Java Applets:&lt;br /&gt;
 echo &amp;#039;:Applet:E::html::/opt/java/bin/appletviewer:&amp;#039; &amp;gt; /etc/binfmt.d/Applet.conf&lt;br /&gt;
&lt;br /&gt;
{{ic|systemd-binfmt}} を[[再起動]]して新しいハンドラを登録してください。登録された binfmt ハンドラはファイルとして {{ic|/proc/sys/fs/binfmt_misc}} から確認できます。このファイルを表示すると登録されたラッパースクリプトの名前とファイルタイプを認識するために使われるマジックバイトあるいはファイル拡張子がわかります。&lt;br /&gt;
&lt;br /&gt;
===ラッパースクリプト===&lt;br /&gt;
====jarwrapper====&lt;br /&gt;
 #!/bin/bash&lt;br /&gt;
 # /usr/local/bin/jarwrapper - the wrapper for binfmt_misc/jar&lt;br /&gt;
 &lt;br /&gt;
 # set path to java using JAVA_HOME if available, otherwise assume it&amp;#039;s on the PATH&lt;br /&gt;
 JAVA_PATH=${JAVA_HOME:+$JAVA_HOME/jre/bin/}java&lt;br /&gt;
 $JAVA_PATH -jar &amp;quot;$@&amp;quot;&lt;br /&gt;
&lt;br /&gt;
====javawrapper====&lt;br /&gt;
 #!/bin/bash&lt;br /&gt;
 # /usr/local/bin/javawrapper - the wrapper for binfmt_misc/java&lt;br /&gt;
 &lt;br /&gt;
 if [ -z &amp;quot;$1&amp;quot; ]; then&lt;br /&gt;
 	exec 1&amp;gt;&amp;amp;2&lt;br /&gt;
 	echo Usage: $0 class-file&lt;br /&gt;
 	exit 1&lt;br /&gt;
 fi&lt;br /&gt;
 &lt;br /&gt;
 CLASS=$1&lt;br /&gt;
 FQCLASS=`/usr/local/bin/javaclassname $1`&lt;br /&gt;
 FQCLASSN=`echo $FQCLASS | sed -e &amp;#039;s/^.*\.\([^.]*\)$/\1/&amp;#039;`&lt;br /&gt;
 FQCLASSP=`echo $FQCLASS | sed -e &amp;#039;s-\.-/-g&amp;#039; -e &amp;#039;s-^[^/]*$--&amp;#039; -e &amp;#039;s-/[^/]*$--&amp;#039;`&lt;br /&gt;
 &lt;br /&gt;
 # for example:&lt;br /&gt;
 # CLASS=Test.class&lt;br /&gt;
 # FQCLASS=foo.bar.Test&lt;br /&gt;
 # FQCLASSN=Test&lt;br /&gt;
 # FQCLASSP=foo/bar&lt;br /&gt;
 &lt;br /&gt;
 unset CLASSBASE&lt;br /&gt;
 &lt;br /&gt;
 declare -i LINKLEVEL=0&lt;br /&gt;
 &lt;br /&gt;
 while :; do&lt;br /&gt;
 	if [ &amp;quot;`basename $CLASS .class`&amp;quot; == &amp;quot;$FQCLASSN&amp;quot; ]; then&lt;br /&gt;
 		# See if this directory works straight off&lt;br /&gt;
 		cd -L `dirname $CLASS`&lt;br /&gt;
 		CLASSDIR=$PWD&lt;br /&gt;
 		cd $OLDPWD&lt;br /&gt;
 		if echo $CLASSDIR | grep -q &amp;quot;$FQCLASSP$&amp;quot;; then&lt;br /&gt;
 			CLASSBASE=`echo $CLASSDIR | sed -e &amp;quot;s.$FQCLASSP$..&amp;quot;`&lt;br /&gt;
 			break;&lt;br /&gt;
 		fi&lt;br /&gt;
 		# Try dereferencing the directory name&lt;br /&gt;
 		cd -P `dirname $CLASS`&lt;br /&gt;
 		CLASSDIR=$PWD&lt;br /&gt;
 		cd $OLDPWD&lt;br /&gt;
 		if echo $CLASSDIR | grep -q &amp;quot;$FQCLASSP$&amp;quot;; then&lt;br /&gt;
 			CLASSBASE=`echo $CLASSDIR | sed -e &amp;quot;s.$FQCLASSP$..&amp;quot;`&lt;br /&gt;
 			break;&lt;br /&gt;
 		fi&lt;br /&gt;
 		# If no other possible filename exists&lt;br /&gt;
 		if [ ! -L $CLASS ]; then&lt;br /&gt;
 			exec 1&amp;gt;&amp;amp;2&lt;br /&gt;
 			echo $0:&lt;br /&gt;
 			echo &amp;quot;  $CLASS should be in a&amp;quot; \&lt;br /&gt;
 			     &amp;quot;directory tree called $FQCLASSP&amp;quot;&lt;br /&gt;
 			exit 1&lt;br /&gt;
 		fi&lt;br /&gt;
 	fi&lt;br /&gt;
 	if [ ! -L $CLASS ]; then break; fi&lt;br /&gt;
 	# Go down one more level of symbolic links&lt;br /&gt;
 	let LINKLEVEL+=1&lt;br /&gt;
 	if [ $LINKLEVEL -gt 5 ]; then&lt;br /&gt;
 		exec 1&amp;gt;&amp;amp;2&lt;br /&gt;
 		echo $0:&lt;br /&gt;
 		echo &amp;quot;  Too many symbolic links encountered&amp;quot;&lt;br /&gt;
 		exit 1&lt;br /&gt;
 	fi&lt;br /&gt;
 	CLASS=`ls --color=no -l $CLASS | sed -e &amp;#039;s/^.* \([^ ]*\)$/\1/&amp;#039;`&lt;br /&gt;
 done&lt;br /&gt;
 &lt;br /&gt;
 if [ -z &amp;quot;$CLASSBASE&amp;quot; ]; then&lt;br /&gt;
 	if [ -z &amp;quot;$FQCLASSP&amp;quot; ]; then&lt;br /&gt;
 		GOODNAME=$FQCLASSN.class&lt;br /&gt;
 	else&lt;br /&gt;
 		GOODNAME=$FQCLASSP/$FQCLASSN.class&lt;br /&gt;
 	fi&lt;br /&gt;
 	exec 1&amp;gt;&amp;amp;2&lt;br /&gt;
 	echo $0:&lt;br /&gt;
 	echo &amp;quot;  $FQCLASS should be in a file called $GOODNAME&amp;quot;&lt;br /&gt;
 	exit 1&lt;br /&gt;
 fi&lt;br /&gt;
 &lt;br /&gt;
 if ! echo $CLASSPATH | grep -q &amp;quot;^\(.*:\)*$CLASSBASE\(:.*\)*&amp;quot;; then&lt;br /&gt;
 	# class is not in CLASSPATH, so prepend dir of class to CLASSPATH&lt;br /&gt;
 	if [ -z &amp;quot;${CLASSPATH}&amp;quot; ] ; then&lt;br /&gt;
 		export CLASSPATH=$CLASSBASE&lt;br /&gt;
 	else&lt;br /&gt;
 		export CLASSPATH=$CLASSBASE:$CLASSPATH&lt;br /&gt;
 	fi&lt;br /&gt;
 fi&lt;br /&gt;
 &lt;br /&gt;
 shift&lt;br /&gt;
 # set path to java using JAVA_HOME if available, otherwise assume it&amp;#039;s on the PATH&lt;br /&gt;
 JAVA_PATH=${JAVA_HOME:+$JAVA_HOME/jre/bin/}java&lt;br /&gt;
 $JAVA_PATH $FQCLASS &amp;quot;$@&amp;quot;&lt;br /&gt;
&lt;br /&gt;
====javaclassname====&lt;br /&gt;
上記の &amp;#039;&amp;#039;&amp;#039;javawrapper&amp;#039;&amp;#039;&amp;#039; スクリプトが使用するプログラムです。以下のコマンドでコンパイルしてください:&lt;br /&gt;
 gcc -O2 -o javaclassname javaclassname.c&lt;br /&gt;
コンパイルして出来た実行ファイルは {{ic|/usr/local/bin}} に移動してください。&lt;br /&gt;
 /* javaclassname.c&lt;br /&gt;
  *&lt;br /&gt;
  * Extracts the class name from a Java class file; intended for use in a Java&lt;br /&gt;
  * wrapper of the type supported by the binfmt_misc option in the Linux kernel.&lt;br /&gt;
  *&lt;br /&gt;
  * Copyright (C) 1999 Colin J. Watson &amp;lt;cjw44@cam.ac.uk&amp;gt;.&lt;br /&gt;
  *&lt;br /&gt;
  * This program is free software; you can redistribute it and/or modify&lt;br /&gt;
  * it under the terms of the GNU General Public License as published by&lt;br /&gt;
  * the Free Software Foundation; either version 2 of the License, or&lt;br /&gt;
  * (at your option) any later version.&lt;br /&gt;
  *&lt;br /&gt;
  * This program is distributed in the hope that it will be useful,&lt;br /&gt;
  * but WITHOUT ANY WARRANTY; without even the implied warranty of&lt;br /&gt;
  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the&lt;br /&gt;
  * GNU General Public License for more details.&lt;br /&gt;
  *&lt;br /&gt;
  * You should have received a copy of the GNU General Public License&lt;br /&gt;
  * along with this program; if not, write to the Free Software&lt;br /&gt;
  * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA&lt;br /&gt;
  */&lt;br /&gt;
 &lt;br /&gt;
 #include &amp;lt;stdlib.h&amp;gt;&lt;br /&gt;
 #include &amp;lt;stdio.h&amp;gt;&lt;br /&gt;
 #include &amp;lt;stdarg.h&amp;gt;&lt;br /&gt;
 #include &amp;lt;sys/types.h&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
 /* From Sun&amp;#039;s Java VM Specification, as tag entries in the constant pool. */&lt;br /&gt;
 &lt;br /&gt;
 #define CP_UTF8 1&lt;br /&gt;
 #define CP_INTEGER 3&lt;br /&gt;
 #define CP_FLOAT 4&lt;br /&gt;
 #define CP_LONG 5&lt;br /&gt;
 #define CP_DOUBLE 6&lt;br /&gt;
 #define CP_CLASS 7&lt;br /&gt;
 #define CP_STRING 8&lt;br /&gt;
 #define CP_FIELDREF 9&lt;br /&gt;
 #define CP_METHODREF 10&lt;br /&gt;
 #define CP_INTERFACEMETHODREF 11&lt;br /&gt;
 #define CP_NAMEANDTYPE 12&lt;br /&gt;
 &lt;br /&gt;
 /* Define some commonly used error messages */&lt;br /&gt;
 &lt;br /&gt;
 #define seek_error() error(&amp;quot;%s: Cannot seek\n&amp;quot;, program)&lt;br /&gt;
 #define corrupt_error() error(&amp;quot;%s: Class file corrupt\n&amp;quot;, program)&lt;br /&gt;
 #define eof_error() error(&amp;quot;%s: Unexpected end of file\n&amp;quot;, program)&lt;br /&gt;
 #define utf8_error() error(&amp;quot;%s: Only ASCII 1-255 supported\n&amp;quot;, program);&lt;br /&gt;
 &lt;br /&gt;
 char *program;&lt;br /&gt;
 &lt;br /&gt;
 long *pool;&lt;br /&gt;
 &lt;br /&gt;
 u_int8_t read_8(FILE *classfile);&lt;br /&gt;
 u_int16_t read_16(FILE *classfile);&lt;br /&gt;
 void skip_constant(FILE *classfile, u_int16_t *cur);&lt;br /&gt;
 void error(const char *format, ...);&lt;br /&gt;
 int main(int argc, char **argv);&lt;br /&gt;
 &lt;br /&gt;
 /* Reads in an unsigned 8-bit integer. */&lt;br /&gt;
 u_int8_t read_8(FILE *classfile)&lt;br /&gt;
 {&lt;br /&gt;
 	int b = fgetc(classfile);&lt;br /&gt;
 	if(b == EOF)&lt;br /&gt;
 		eof_error();&lt;br /&gt;
 	return (u_int8_t)b;&lt;br /&gt;
 }&lt;br /&gt;
 &lt;br /&gt;
 /* Reads in an unsigned 16-bit integer. */&lt;br /&gt;
 u_int16_t read_16(FILE *classfile)&lt;br /&gt;
 {&lt;br /&gt;
 	int b1, b2;&lt;br /&gt;
 	b1 = fgetc(classfile);&lt;br /&gt;
 	if(b1 == EOF)&lt;br /&gt;
 		eof_error();&lt;br /&gt;
 	b2 = fgetc(classfile);&lt;br /&gt;
 	if(b2 == EOF)&lt;br /&gt;
 		eof_error();&lt;br /&gt;
 	return (u_int16_t)((b1 &amp;lt;&amp;lt; 8) | b2);&lt;br /&gt;
 }&lt;br /&gt;
 &lt;br /&gt;
 /* Reads in a value from the constant pool. */&lt;br /&gt;
 void skip_constant(FILE *classfile, u_int16_t *cur)&lt;br /&gt;
 {&lt;br /&gt;
 	u_int16_t len;&lt;br /&gt;
 	int seekerr = 1;&lt;br /&gt;
 	pool[*cur] = ftell(classfile);&lt;br /&gt;
 	switch(read_8(classfile))&lt;br /&gt;
 	{&lt;br /&gt;
 	case CP_UTF8:&lt;br /&gt;
 		len = read_16(classfile);&lt;br /&gt;
 		seekerr = fseek(classfile, len, SEEK_CUR);&lt;br /&gt;
 		break;&lt;br /&gt;
 	case CP_CLASS:&lt;br /&gt;
 	case CP_STRING:&lt;br /&gt;
 		seekerr = fseek(classfile, 2, SEEK_CUR);&lt;br /&gt;
 		break;&lt;br /&gt;
 	case CP_INTEGER:&lt;br /&gt;
 	case CP_FLOAT:&lt;br /&gt;
 	case CP_FIELDREF:&lt;br /&gt;
 	case CP_METHODREF:&lt;br /&gt;
 	case CP_INTERFACEMETHODREF:&lt;br /&gt;
 	case CP_NAMEANDTYPE:&lt;br /&gt;
 		seekerr = fseek(classfile, 4, SEEK_CUR);&lt;br /&gt;
 		break;&lt;br /&gt;
 	case CP_LONG:&lt;br /&gt;
 	case CP_DOUBLE:&lt;br /&gt;
 		seekerr = fseek(classfile, 8, SEEK_CUR);&lt;br /&gt;
 		++(*cur);&lt;br /&gt;
 		break;&lt;br /&gt;
 	default:&lt;br /&gt;
 		corrupt_error();&lt;br /&gt;
 	}&lt;br /&gt;
 	if(seekerr)&lt;br /&gt;
 		seek_error();&lt;br /&gt;
 }&lt;br /&gt;
 &lt;br /&gt;
 void error(const char *format, ...)&lt;br /&gt;
 {&lt;br /&gt;
 	va_list ap;&lt;br /&gt;
 	va_start(ap, format);&lt;br /&gt;
 	vfprintf(stderr, format, ap);&lt;br /&gt;
 	va_end(ap);&lt;br /&gt;
 	exit(1);&lt;br /&gt;
 }&lt;br /&gt;
 &lt;br /&gt;
 int main(int argc, char **argv)&lt;br /&gt;
 {&lt;br /&gt;
 	FILE *classfile;&lt;br /&gt;
 	u_int16_t cp_count, i, this_class, classinfo_ptr;&lt;br /&gt;
 	u_int8_t length;&lt;br /&gt;
 &lt;br /&gt;
 	program = argv[0];&lt;br /&gt;
 &lt;br /&gt;
 	if(!argv[1])&lt;br /&gt;
 		error(&amp;quot;%s: Missing input file\n&amp;quot;, program);&lt;br /&gt;
 	classfile = fopen(argv[1], &amp;quot;rb&amp;quot;);&lt;br /&gt;
 	if(!classfile)&lt;br /&gt;
 		error(&amp;quot;%s: Error opening %s\n&amp;quot;, program, argv[1]);&lt;br /&gt;
 &lt;br /&gt;
 	if(fseek(classfile, 8, SEEK_SET))  /* skip magic and version numbers */&lt;br /&gt;
 		seek_error();&lt;br /&gt;
 	cp_count = read_16(classfile);&lt;br /&gt;
 	pool = calloc(cp_count, sizeof(long));&lt;br /&gt;
 	if(!pool)&lt;br /&gt;
 		error(&amp;quot;%s: Out of memory for constant pool\n&amp;quot;, program);&lt;br /&gt;
 &lt;br /&gt;
 	for(i = 1; i &amp;lt; cp_count; ++i)&lt;br /&gt;
 		skip_constant(classfile, &amp;amp;i);&lt;br /&gt;
 	if(fseek(classfile, 2, SEEK_CUR))	/* skip access flags */&lt;br /&gt;
 		seek_error();&lt;br /&gt;
 &lt;br /&gt;
 	this_class = read_16(classfile);&lt;br /&gt;
 	if(this_class &amp;lt; 1 || this_class &amp;gt;= cp_count)&lt;br /&gt;
 		corrupt_error();&lt;br /&gt;
 	if(!pool[this_class] || pool[this_class] == -1)&lt;br /&gt;
 		corrupt_error();&lt;br /&gt;
 	if(fseek(classfile, pool[this_class] + 1, SEEK_SET))&lt;br /&gt;
 		seek_error();&lt;br /&gt;
 &lt;br /&gt;
 	classinfo_ptr = read_16(classfile);&lt;br /&gt;
 	if(classinfo_ptr &amp;lt; 1 || classinfo_ptr &amp;gt;= cp_count)&lt;br /&gt;
 		corrupt_error();&lt;br /&gt;
 	if(!pool[classinfo_ptr] || pool[classinfo_ptr] == -1)&lt;br /&gt;
 		corrupt_error();&lt;br /&gt;
 	if(fseek(classfile, pool[classinfo_ptr] + 1, SEEK_SET))&lt;br /&gt;
 		seek_error();&lt;br /&gt;
 &lt;br /&gt;
 	length = read_16(classfile);&lt;br /&gt;
 	for(i = 0; i &amp;lt; length; ++i)&lt;br /&gt;
 	{&lt;br /&gt;
 		u_int8_t x = read_8(classfile);&lt;br /&gt;
 		if((x &amp;amp; 0x80) || !x)&lt;br /&gt;
 		{&lt;br /&gt;
 			if((x &amp;amp; 0xE0) == 0xC0)&lt;br /&gt;
 			{&lt;br /&gt;
 				u_int8_t y = read_8(classfile);&lt;br /&gt;
 				if((y &amp;amp; 0xC0) == 0x80)&lt;br /&gt;
 				{&lt;br /&gt;
 					int c = ((x &amp;amp; 0x1f) &amp;lt;&amp;lt; 6) + (y &amp;amp; 0x3f);&lt;br /&gt;
 					if(c) putchar(c);&lt;br /&gt;
 					else utf8_error();&lt;br /&gt;
 				}&lt;br /&gt;
 				else utf8_error();&lt;br /&gt;
 			}&lt;br /&gt;
 			else utf8_error();&lt;br /&gt;
 		}&lt;br /&gt;
 		else if(x == &amp;#039;/&amp;#039;) putchar(&amp;#039;.&amp;#039;);&lt;br /&gt;
 		else putchar(x);&lt;br /&gt;
 	}&lt;br /&gt;
 	putchar(&amp;#039;\n&amp;#039;);&lt;br /&gt;
 	free(pool);&lt;br /&gt;
 	fclose(classfile);&lt;br /&gt;
 	return 0;&lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
==シンプルなソリューション==&lt;br /&gt;
大抵な場合はシンプルなソリューションで問題なき機能します。{{ic|/etc/binfmt.d/java.conf}} ファイルを作成:&lt;br /&gt;
 :Java:E::class::/usr/local/bin/javawrapper:&lt;br /&gt;
{{ic|/usr/local/bin/javawrapper}} ファイルを作成:&lt;br /&gt;
 #!/bin/sh&lt;br /&gt;
 file=${1%%.class}&lt;br /&gt;
 file=${file/.\//}&lt;br /&gt;
 java $file&lt;br /&gt;
パーミッションを設定:&lt;br /&gt;
 # chmod +x /usr/local/bin/javawrapper&lt;br /&gt;
設定したら実際にテストしてみてください。&lt;br /&gt;
&lt;br /&gt;
==テスト==&lt;br /&gt;
以下のような簡単な {{ic|HelloWorld.java}} プログラムを作成:&lt;br /&gt;
 class HelloWorld {&lt;br /&gt;
     public static void main(String args[]) {&lt;br /&gt;
         System.out.println(&amp;quot;Hello World!&amp;quot;);&lt;br /&gt;
     }&lt;br /&gt;
 }&lt;br /&gt;
通常通りにコンパイルして &amp;#039;&amp;#039;.class&amp;#039;&amp;#039; ファイルを作成したら、以下のコマンドで実行可能属性を付与:&lt;br /&gt;
 chmod +x HelloWorld.class&lt;br /&gt;
以下のコマンドでプログラムを実行できるはずです:&lt;br /&gt;
 ./HelloWorld.class&lt;br /&gt;
&lt;br /&gt;
==ノート==&lt;br /&gt;
* 一部資料では &amp;#039;&amp;#039;binfmt_misc&amp;#039;&amp;#039; はモジュールとして紹介されていますが Arch は標準カーネルに組み込んでビルドします。&lt;br /&gt;
* 上記の設定は Sun JRE と OpenJDK 6 で動作を確認しています。&lt;br /&gt;
* &amp;#039;&amp;#039;binfmt_misc&amp;#039;&amp;#039; は他のファイルタイプでも使うことができます。例えば [[Wine]] プログラムを明示的に指定せずに DOS/Windows のファイルを実行する方法は [[Wine#Win16/Win32 バイナリのインタプリタとして Wine を使う]]を見てください。&lt;/div&gt;</summary>
		<author><name>Kusakata</name></author>
	</entry>
</feed>