[Mac][Eclipse]Pleiades入り本体のアップデートすると起動に失敗する時の対処法

Posted under mac入門記,ソフトウェア by uechoco on 日曜日 8 11月 2009 at 07 : 58 : 54

[mac]eclipseインストールとpleiadesで日本語化というMacのEclipseにPleiadesを導入する記事を書いてるくらいなので、現在使用中のEclipse 3.5にもPleiadesが適用されていますが、たまにトラブルが起きたりします。今回のトラブルは、何らかの、特にElipseコア系のソフトウェアアップデートをした後に、Eclipseが起動しなくなってしまうという現象です。案の定、Pleiadesがトラブルを起こしているのですが、私の場合の現象と解決策を残しておきます。

まず、Eclipseソフトウェアアップデートした後、再起動を促されますので再起動をします。そうすると、スプラッシュ画像の直後にダイアログが出て、「起動失敗したから、logファイルにエラー状況書き込んどいたよ」的な英語が書かれています。Pleiadesの説明書にも書いてありますが、Eclipseソフトウェアアップデートの直後は、必ず1回だけEclipseを-cleanオプションで起動させなければいけません。ターミナルなどで/Application/Eclipseに移動し、eclipse -cleanとコマンドを打つことでPleiadesがクリーン起動します。

通常なら、次回以降の起動はEclipse.appのダブルクリックで済むのですが、たまに前述の起動エラーが続くときがあります。その場合、クリーン起動なら正常起動できるのに、-cleanを付けない通常起動だとどうしても起動エラーになってしまいました。困っていたときに、Pleiadesのreadmeをくまなく読んでいると、強制終了が続く場合、-clean起動の後、configuration/jp.sourceforge.mergedoc.pleiades/ ディレクトリを削除すると直るかもしれないと書いてありました。試しにやってみたら、本当に直りました。

というわけで、Pleiadesでトラブルが起きたら、readmeをくまなく見て、解決策を探してみるのがいいでしょう。起動エラーが続く場合は今回の記事のような対応が書かれています。


[mac]MacPortsでmysqlとphpmyadminをインストール

Posted under mac入門記,php by uechoco on 日曜日 25 10月 2009 at 20 : 23 : 15

MacPorts(port)でmysqlやらphpmyadminをインストールする備忘録

  • mysqlをportでインストール
  • mysql_install_db5でmysqlの初期化
  • sudo /opt/local/share/mysql5/mysql/mysql.server start
  • mysqladminでrootパスワードを設定
  • mysqlを自動起動に登録
  • phpmyadminもportでインストール
  • VirtualHostなどでapacheにパスを通す
  • #2002エラーでログインできない場合はphpのmysqlのdefault_socketを確認

参考:


[mac][php]MacPortsでphpをインストールする備忘録

Posted under mac入門記,php by uechoco on 日曜日 25 10月 2009 at 17 : 44 : 15

MacPortsでphp 5.3.0をインストールする備忘録

  • MacPortsのインストール
  • ~/.bashrc(~/.bash_profile)でPATHとMANPATHにMacPorts(port)のパスを通す
  • php5をインストール(+apache2) (variablesで確認する)
  • apache拡張ツール(apxs)でphp5を認識させる
  • httpd.confにInclude conf/extra/mod_php.confを追記
  • 適当に拡張入れたり
    • sudo port install php5-exif php5-gd php5-http php5-iconv php5-imagick php5-mbstring php5-mcrypt php5-mysql php5-openssl php5-syck php5-xdebug

参考:


[Mac]netatalkの.AppleDoubleでsymfonyコマンドがつまずく時がある

Posted under Linux,mac入門記,php,symfony by uechoco on 日曜日 13 9月 2009 at 02 : 03 : 07

タイトルでもわかるとおり、非常に限定的な環境でsymfonyを使ったときにハマってしまったので、今後、私と同じようなマニアックな環境でハマってしまった人がググってくれることを期待して備忘録を残します。

さて、私はMac OS X上にVMware Fusion 2を導入していて、会社での開発をVM上のCentOS 5で行っています。開発ではMacのCocoaに対応したEclipse 3.5を主にしようしています。EclipseでVM上のファイルを直接読み書きするため、netatalkというMac版sambaとも言えるソフトウェアをCentOSに導入して、MacとLinux間の共有を行っています。ここら辺のお話は、以前3回に渡って書いたnetatalk導入のブログの記事を参照してもらえればと思います。

Mac OS Xでで外部ストレージ(NFS)などを用いるとき、ファイルのメタ情報を保存するために、netatalkでは.AppleDoubleというフォルダを各フォルダごとに生成し、そのフォルダの中に元ファイル名と同名のファイル名でメタ情報を格納します。※WikipediaのAppleSingleにAppleDoubleについて記載があります。netatalkではnoadoubleというオプションがあり、「必要なければ.AppleDoubleを作らない」という設定にすることができるのですが、必要ある場合は当然作成されてしまいます。例えば、Eclipseからアクセスして保存とかをすると、.AppleDoubleが作られてしまうような気がします。

CentOS上にsymfonyを展開してMacからターミナルで操ろうとしたとき、基本的にはsymfonyのあの深いフォルダ階層のすべてに.AppleDoubleが生成されてしまうということです。そこでこまったのがsymfonyコマンド。propel:build-xxxとかやろうとすると、どうも.AppleDoubleのせいでうまくいかないことがあります。

例えばpropel:build-model

Bash:
  1. [ueno@localhost project]$ ./symfony propel:build-model
  2.   Unable to parse file "/path/to/project/config/.AppleDouble/schema.yml": Unable to parse line 1 (

なぜか.AppleDoubleフォルダ内のshema.ymlがパースできないと言われてしまいます。前述の通り、.AppleDoubleフォルダの中に元ファイル名と同名のメタファイルを生成しますので、もしかしたらschema.ymlという名前に反応してしまったのかもしれません。一応propel:build-modelのヘルプを見てみましょう。

Bash:
  1. [ueno@localhost project]$ ./symfony help propel:build-model
  2. Usage:
  3.  symfony propel:build-model [--phing-arg="..."]
  4.  
  5. Aliases: propel-build-model
  6.  
  7. Options:
  8.  --phing-arg  Arbitrary phing argument (multiple values allowed)
  9.  
  10. Description:
  11.  The propel:build-model task creates model classes from the schema:
  12.  
  13.    ./symfony propel:build-model
  14.  
  15.  The task read the schema information in config/*schema.xml and/or
  16.  config/*schema.yml from the project and all installed plugins.
  17.  
  18.  You mix and match YML and XML schema files. The task will convert
  19.  YML ones to XML before calling the Propel task.
  20.  
  21.  The model classes files are created in lib/model.
  22.  
  23.  This task never overrides custom classes in lib/model.
  24.  It only replaces files in lib/model/om and lib/model/map.

検索条件はconfig/*schema.ymlと書いてありますので、フォルダも引っかかってしまうようです。

で解決策はどうするのか?propel:build-xxx系のコマンドなどでは、symfonyライブラリの中に含まれるsfFinder.class.phpというユーティリティを利用しています。この中に、指定されたルールに基づいて、ファイルやディレクトリを検索するというin()メソッドがあるのですが、この中で、バージョン管理ソフトのディレクトリを無視するようなプログラムの掛かれば部分があります。symfony 1.2.8のlib/symfony/util/sfFinder.class.phpの341行目付近です。

php:
  1. /**
  2.    * Searches files and directories which match defined rules.
  3.    *
  4.    * @return array list of files and directories
  5.    */
  6.   public function in()
  7.   {
  8.     $files    = array();
  9.     $here_dir = getcwd();
  10.  
  11.     $finder = clone $this;
  12.  
  13.     if ($this->ignore_version_control)
  14.     {
  15.       $ignores = array('.svn', '_svn', 'CVS', '_darcs', '.arch-params', '.monotone', '.bzr', '.git', '.hg');
  16.  
  17.       $finder->discard($ignores)->prune($ignores);
  18.     }

svnやらcvsやらgitやらのメタ情報を保存するフォルダの除外指定が列挙されています。ならばここにAppleDoubleをいれればいいんでないか?ということで、修正多野がこちら

php:
  1. if ($this->ignore_version_control)
  2.     {
  3.       $ignores = array('.svn', '_svn', 'CVS', '_darcs', '.arch-params', '.monotone', '.bzr', '.git', '.hg', '.AppleDouble');
  4.  
  5.       $finder->discard($ignores)->prune($ignores);
  6.     }

symfonyのコアを書き換えるのはどうかと思ったのですが、この設定を付け加えるだけでnetatalk環境でのsymfonyコマンドが問題なく使えるようになったので開発が進みそうです。

まぁ、こんな環境でsymfony使う人はなかなか居ないと思いますが。。。


[mac]Appleのリンゴマーク(Appleマーク)を入力する

Posted under mac入門記 by uechoco on 土曜日 22 8月 2009 at 12 : 25 : 10

Mac使いの特権(?)の1つに、キーボードからリンゴマークを入力できるというものがあります。WindowsやLinuxユーザの方にはなんだそれ?と思われますが、実際に見てみてください。

mac_apple_mark

これです。入力方法は[Option]+[Shift]+[K]です。Macを買ったばかりの頃に友人にとにかく押してみろと言われて知りました。私の周りでは、Skypeの横にこのマークをつけて、Macユーザであることを主張するといった使い方があります。

他にも、MacのFEPでは[Option]キーを押しながらだと、いつもの違う文字が入力できます。バックスラッシュとか、中点とか、三点リーダとか、TMマークとか。自分で探してみるのも面白いですね。


« 前ページへ次ページへ »

Copyright © 2012 うえちょこ@ぼろぐ. WP Theme created by Web Top.