2008-11-22 4 views
1

Je crée une liste des tranches dans mon application Merb, comme ceci:Le meilleur moyen de lister les dépendances Merb :: Slices?

Merb :: Slices.each_slice do | tranche |

Je voudrais obtenir la liste des dépendances pour chacune de ces tranches, comment y accéder?

Je lis toujours le code merb, solution pourrait venir bientôt;)

Répondre

0

Je ne l'ai pas utilisé des tranches encore, mais je crois comprendre qu'ils sont comme une mini-application Merb themself donc ne chaque tranche avoir un /config/dependencies.rb? Peut-être que cela est analysé dans le programme et est disponible quelque part.

Il peut y avoir quelque chose here in the docs.

En outre, voici les méthodes disponibles sur la constante Merb (dont vous obtenez des choses comme l'environnement de). Il y en a un appelé dependencies qui retourne un tableau (qui est vide quand je cours avec merb -i dans une application).

>> Merb.methods.sort 
=> ["<", "<=", "<=>", "==", "===", "=~", ">", ">=", "JSON", "__caller_info__", "__caller_lines__", "__id__", "__profile__", "__send__", "abstract_method", "adapter", "adapter=", "add_generators", "add_mime_type", "add_rakefiles", "ancestors", "args_and_options", "assigns", "at_exit", "at_exit_procs", "autoload", "autoload?", "available_accepts", "available_mime_types", "b64encode", "blank?", "bundled?", "class", "class_eval", "class_variable_defined?", "class_variables", "clone", "config", "const_defined?", "const_get", "const_missing", "const_set", "constants", "context", "debugger", "decode64", "decode_b", "deep_clone", "deferred_actions", "dependencies", "dependency", "describe", "dir_for", "disable", "disabled?", "disabled_components", "disabled_components=", "display", "dup", "encode64", "encoded_hash", "enforce!", "enum_for", "env", "env?", "environment", "environment=", "environment_info", "environment_info=", "eql?", "equal?", "exception", "exiting", "exiting=", "extend", "extract_options_from_args!", "fatal!", "find_const", "forking_environment?", "framework_root", "freeze", "frozen?", "full_const_get", "full_const_set", "generators", "given", "glob_for", "hash", "id", "in?", "include?", "included_modules", "inline", "inspect", "instance_eval", "instance_method", "instance_methods", "instance_of?", "instance_variable_defined?", "instance_variable_get", "instance_variable_set", "instance_variables", "is_a?", "is_haml?", "j", "jj", "kind_of?", "klass_hashes", "klass_hashes=", "load_config", "load_dependencies", "load_dependency", "load_paths", "load_paths=", "log_path", "log_stream", "logger", "make_module", "merb", "merge_env", "meta_class", "method", "method_defined?", "methods", "mime_transform_method", "module_eval", "modules", "name", "nil?", "object_id", "on_jruby?", "on_windows?", "options", "orm", "orm=", "orm_generator_scope", "present?", "print_colorized_backtrace", "private_class_method", "private_instance_methods", "private_method_defined?", "private_methods", "protected_instance_methods", "protected_method_defined?", "protected_methods", "public_class_method", "public_instance_methods", "public_method_defined?", "public_methods", "push_path", "quacks_like?", "rakefiles", "reload", "remove_mime_type", "remove_paths", "rescue_require", "reset_logger!", "respond_to?", "restart_environment", "root", "root=", "root_path", "send", "share_as", "share_examples_for", "shared_examples_for", "should", "should_not", "singleton_methods", "start", "start_environment", "started", "started=", "started?", "taguri", "taguri=", "taint", "tainted?", "template_engine", "template_engine=", "test_framework", "test_framework=", "test_framework_generator_scope", "testing?", "to_a", "to_enum", "to_json", "to_s", "to_yaml", "to_yaml_properties", "to_yaml_style", "track_dependency", "trap", "try_dup", "type", "untaint", "use_orm", "use_template_engine", "use_test", "use_testing_framework", "yaml_as", "yaml_tag_class_name", "yaml_tag_read_class"] 
1

Semble impossible d'obtenir la liste des dépendances pour une tranche particulière.

La solution suivante consiste à analyser la tranche init.rb

Quelque chose d'intéressant trouvé dans la recherche, la liste globale des dépendances:

Merb :: BootLoader :: Dependencies.dependencies

+0

Vous voudrez peut-être vérifier le canal Merb IRC sur freenode, quelqu'un sait probablement là-bas. – dylanfm

0

En théorie, votre tranche devrait être empaquetée comme une gemme. En tant que tel, vous pouvez retirer les dépendances directement de la gemme elle-même

Questions connexes