6
votes

Ouverture d'un fichier local à Eclipse depuis le Web

En ce moment, lorsque je remarque un problème sur une page sur mon site Web PHP, je dois regarder l'URL, déduire mentalement quel fichier est responsable de l'affichage de cette page, puis naviguez sur l'arborescence du fichier PDT Eclipse pour ouvrir ce fichier. . Ceci est gênant et utilise une puissance cérébrale qui aurait pu être appliquée à la résolution du problème.

J'aimerais que mon site Web PHP affiche sur chaque page un lien que je puisse cliquer pour ouvrir automatiquement le bon fichier dans Eclipse. p>

Je peux facilement calculer le chemin absolu complet pour le fichier que j'ai besoin d'ouvrir (par exemple, ouvert C: /xampp/htdocs/controls/foo/bar.php lorsque vous visitez / foo / bar), et Je peux m'assurer que Eclipse est actuellement ouverte avec le projet correct chargé, mais je suis coincé sur la manière dont je peux avoir Firefox / Chrome / Ie dire à Eclipse pour ouvrir ce fichier spécifique. p>

edit forte> p>

Je vais le long du mode de données: URI, en ajoutant un lien à mon fichier contenant le nom du fichier, Avec un type mime inhabituel. p> xxx pré>

Le contenu codé de base64 est le chemin absolu du fichier sur mon ordinateur. Lorsque je clique sur le lien, Firefox me permet de lier le type de contenu à une nouvelle application. J'ai donc choisi un fichier de commandes que j'ai écrit moi-même: P>

for /f "delims=" %%i in (%1) do (
  notepad.exe "%%i"
)


0 commentaires

4 Réponses :


2
votes

J'ai essayé des choses similaires dans le passé, mais ce n'est pas aussi facile que cela devrait être. Le résultat final a toujours été que Firefox aurait besoin d'une extension pour exécuter un fichier local (je n'ai jamais trouvé celui qui ferait le travail), et c'est-à-dire que vous ne le feriez plus (sauf, peut-être, pour un complexe propriétaire excrétiquement vbscript / Wscript).

Je vois deux solutions de contournement pour faire ceci:

  1. Une fonction affiche le chemin de fichier de votre page dans une fenêtre de dialogue Big FAT, ce qui facilite la copie et coller dans le Windows + r " Exécuter "dialogue

  2. Alternativement, enregistrez un protocole personnalisé (E.G. Eclipse: // ) dans votre système d'exploitation et attachez ce protocole à Eclipse. C'est une très bonne façon, je n'ai pas encore essayé cela, mais je le ferai certainement dans le prochain projet dont j'ai besoin. Mozillazine: Protocole d'enregistrement (voir l'exemple de fichier .reg)


5 commentaires

Symfony fait quelque chose comme le protocole personnalisé pour les structures. Je ne sais pas exactement ce qu'il fait (je n'utilise pas l'IDE, ils ont construit la fonctionnalité pour) mais @victor Découvrez Symfony.


Intéressant. J'ai pensé à utiliser une donnée de données: URL pour télécharger un fichier avec une extension personnalisée contenant le chemin d'accès au fichier local et liant cette extension personnalisée à un fichier de commandes qui ouvrirait le fichier dans Eclipse. Mais je ne peux pas sembler obtenir Eclipse pour ouvrir un fichier PHP sur le disque dans l'instance actuellement ouverte. Windows + R ne semble pas ouvrir le fichier dans Eclipse, non plus.


@Victor the Windows + R Problème Vous devriez pouvoir trier en associant Eclipse avec l'extension .php (je pense que SHIFT + Cliquez avec le bouton droit de la souris sur un fichier PHP dans l'explorateur -> "Ouvert avec ...." -> choisir " Sélectionnez Application "-> ... (la formulation est approximative, je n'ai que des fenêtres allemandes 7 à la main).


Cela pourrait vous aider à créer le gestionnaire pour le protocole personnalisé: ibm.com/developerworks / Bibliothèque / OS-Eclipse-RCPURL


@ Ring0 vous, monsieur, êtes un vrai connaisseur!



0
votes

Vous obtenez le chemin local avec fichier fort>.

Peut-être essayez-vous quelque chose comme ça? p>

<?php
'127.0.0.1' == $_SERVER["REMOTE_ADDR"] and print __FILE__;
?>


3 commentaires

@Viktor: Toscho fournit de bons conseils, s'il est incomplet. C'est-à-dire que le code de code de chaque script php dans son code source, on pourrait plutôt extraire de manière dynamique cet emplacement à l'aide de la constante de magie __file__. Vous pouvez ensuite construire une éclipse: // extrayé_file_name_here uri (ou utilisez un autre mécanisme pour ouvrir le fichier - c'est à côté du point). Cela serait évidemment moins de travail, ainsi que plus robuste, que le code du site.


@ user359996: Trouver le nom du fichier fourni est un problème résolu. Non seulement cela, mais il est déjà résolu d'une manière beaucoup plus robuste que d'utiliser Fichier : J'utilise le code Dispatcher pour déduire l'action en cours d'exécution et le code de charge automatique de la classe pour déterminer le fichier qu'il réside. Dans. Mon problème est que je ne peux pas obtenir le fichier à ouvrir dans Eclipse (bien que j'ai réussi à l'ouvrir dans le bloc-notes!). Construire le mécanisme pour ouvrir le fichier est le point entier de la question. Comment pouvez-vous dire que c'est à côté du point ??


J'ai dit quel que soit le mécanisme que vous avez finalement utilisé est sans importance à mon observation , pas à votre question.



0
votes

Integrate Eclipse avec XDEBUG une option? J'ai fait cela avec Textmate afin que les messages d'erreur générés soient cliqués pour m'emmener à la bonne ligne dans le bon fichier. (Voir Cette question pour plus de détails).


0 commentaires

3
votes

[PATHTOECLIPSE] \ ECLIPSEC.EXE -NAME ECLIPSE --LAUNCHER.OPENFILE [PLEINPATHTOTOUOURFILEERE]

Je ne suis pas sûr que cela fonctionne avec Galileo (je suis sur Helios)

lecture supplémentaire: https://bugs.eclipse.org/bugs/show_bug .cgi? id = 4922 (c'est une longue histoire longue)


1 commentaires

Une histoire longue mais intéressante . Merci pour la tête. On dirait que ma version ne fonctionnera pas bientôt ...