2010-05-06 11 views

उत्तर

5

मुझे लगता है कि इस सवाल का जवाब वर्तमान में नहीं है ... मैंने पाया विभिन्न लोगों में कुछ की कोशिश कर रहा है और कुछ को ऊपर उठाने के मुद्दों पूछ खोज गूगल का एक सा कर ...

https://serverfault.com/questions/165539/redmine-in-ironruby

वर्तमान में, रेडमाइन केवल रूबी 1.8.6 और 1.8.7 और रूबी एंटरप्राइज़ संस्करण पर समर्थित है। वर्तमान में जेआरबी और रूबिनीस पर रेडमाइन चलने के प्रयास चल रहे हैं। चूंकि खिड़कियां चलाने वाले कई कोर देव नहीं हैं, मैं यह नहीं मानूंगा कि कोई भी सक्रिय रूप से IronRuby संगतता पर काम करता है। यदि आप आवश्यक पैच की सहायता और कोड तैयार करने के इच्छुक हैं, तो आपको http://redmine.org पर बात करने के लिए आपका स्वागत है।

Redmine, YAML फ़ाइलें .. उन में% नहीं हो सकता

मेरी निरर्थक redmine IronRuby पर चलाने के लिए प्रयास में बातें मैं खोज रहे थे में से एक यह है कि इस तरह की लाइनों: "field_done_ratio:% पूर्ण" लोकेल yaml फ़ाइलों में अपवाद फेंक दिया। अगर मैंने "%" को हटा दिया है (या कम से कम मैं एक कदम आगे चला गया)।

(इन 16hours के बाद छोड़ दिया है, जबकि स्थानीय होस्ट तक पहुँचने मेरा आखिरी बाधा अनंत पुनर्निर्देशन थे: 3000/है, हालांकि तक पहुँचने स्थानीय होस्ट: 3000/लॉगिन अच्छी तरह से चला गया, लेकिन उसके बाद आप कुछ नहीं कर सकता है ..)

http://ironruby.codeplex.com/workitem/list/basic?size=2147483647

5

मैं Redmine कुछ महीने पहले कुछ सफलता IronRuby पर चल पाने के लिए प्रयास किया। रेडमाइन I का संस्करण 0.9.3 था, आयरनरुबी संस्करण 1.0v4 था, एसक्यूएल सर्वर 2005 और इसे आईआईएस 6 से होस्ट किया गया था। यह वास्तव में इसे चलाने और चलाने के लिए बहुत काम था। मुझे रेडमाइन फाइलों के समूह में मामूली संशोधन करना पड़ा। मैंने कुछ फ़ाइलों को भी जोड़ा जो मेरे डाउनलोड में मौजूद नहीं थे जैसे new_rails_defaults.rb। इसके अतिरिक्त, मुझे गिटहब से आयरनआरबी स्रोत प्राप्त करना पड़ा और आयरन रैक काम करने के लिए इसे थोड़ा संशोधित करना पड़ा।

आईआईएस काम करने के लिए मुझे बनाया गया रेडमाइन आईआईएस वेब अनुप्रयोग में प्रसंस्करण के लिए सभी ट्रैफिक को .NET पर रीडायरेक्ट करना पड़ा। यह "सी: \ विंडोज \ माइक्रोसॉफ्ट.NET \ Framework \ v2.0.50727aspnet_isapi.dll"

पर एक एप्लिकेशन एक्सटेंशन मैपिंग जोड़ने के माध्यम से किया गया था, फिर मैंने अपने वेब.कॉन्फिग फ़ाइल में सभी ट्रैफिक को IronRack पर रीडायरेक्ट किया।

<httpHandlers> 
<clear /> 
<add path="*" verb="*" type="IronRuby.Rack.HttpHandlerFactory, IronRuby.Rack"/></httpHandlers> 

यह स्थिर फ़ाइलों की सेवा करने में सक्षम होने से आईआईएस बंद कर दिया। इसे ठीक करने के लिए मैंने StaticFileHttpHandler बनाया।

using System; 
using System.Collections.Generic; 
using System.IO; 
using System.Linq; 
using System.Text; 
using System.Web; 

namespace StaticFileHttpHandler 
{ 
    public class StaticFileHttpHandler : IHttpHandler 
    { 
     #region IHttpHandler Members 

     public bool IsReusable 
     { 
      get 
      { 
       return true; 
      } 
     } 

     public void ProcessRequest(HttpContext context) 
     { 
      string staticFileUrl = context.Request.Url.LocalPath.Replace(@"/", @"\"); 
      string staticFilePath = context.Server.MapPath(@"~\..\..\"); 
      string defaultStaticFilePathForRemapping = @"\Redmine\public"; 
      string defaultRootDirectoryForRemapping = @"\Redmine"; 
      bool remapImage = !string.IsNullOrWhiteSpace(context.Request.QueryString.ToString()); 

      if (staticFilePath.EndsWith(@"\")) 
      { 
       staticFilePath = staticFilePath.Substring(0, staticFilePath.Length - 1); 
      } 

      if (remapImage) 
      { 
       staticFilePath += (defaultStaticFilePathForRemapping + staticFileUrl.Replace(defaultRootDirectoryForRemapping, "")); 
      } 
      else 
      { 
       staticFilePath += staticFileUrl; 
      } 

      if (File.Exists(staticFilePath)) 
      { 
       context.Response.ContentType = GetMimeType(staticFilePath); 
       context.Response.TransmitFile(staticFilePath); 
      } 
      else 
      { 
       context.Response.ContentType = "text/plain"; 
       context.Response.Write("The File Does Not Exist!!! File: " + staticFilePath); 
      }    

      context.Response.Flush(); 
      context.ApplicationInstance.CompleteRequest(); 
     } 

     // Found Here: http://kseesharp.blogspot.com/2008/04/c-get-mimetype-from-file-name.html 
     private string GetMimeType(string fileName) 
     { 
      string mimeType = "application/unknown"; 
      string ext = System.IO.Path.GetExtension(fileName).ToLower(); 

      Microsoft.Win32.RegistryKey regKey = Microsoft.Win32.Registry.ClassesRoot.OpenSubKey(ext); 

      if (regKey != null && regKey.GetValue("Content Type") != null) 
      { 
       mimeType = regKey.GetValue("Content Type").ToString(); 
      } 

      return mimeType; 
     } 

     #endregion 
    } 
} 

इसे httpHandlers अनुभाग में भी जोड़ा जाना आवश्यक है। और प्रत्येक स्थैतिक फ़ाइल प्रकार के लिए आप इसे सेवा करने में सक्षम होना चाहते हैं। एक पीएनजी फ़ाइल की सेवा करने का एक उदाहरण नीचे दिखाया गया है।

<httpHandlers> 
<clear /> 
<add path="*.png" verb="*" type="StaticFileHttpHandler.StaticFileHttpHandler, StaticFileHttpHandler"/> 
<add path="*" verb="*" type="IronRuby.Rack.HttpHandlerFactory, IronRuby.Rack"/></httpHandlers> 

मुझे स्थिर फ़ाइलों को इंगित करने के लिए images_controller.rb फ़ाइल बनाने की भी आवश्यकता है।

# This is a place holder controller to allow for mapping static images 

class ImagesController < ApplicationController 
    def index 
    0 
    end 
end 

अगला सभी * .yml फ़ाइलों को प्रतिशत चिह्न के साथ मूल्यों के चारों ओर डबल qoutes की आवश्यकता है।

field_done_ratio: "% ???????" 

साथ ही, मैं सभी सूचकांक निर्माण और डाटाबेस \ विस्थापित फ़ोल्डर में डेटाबेस सेटअप फाइल में हटाए जाने के बाहर टिप्पणी करने के लिए किया था।

निष्कर्ष में, रेडमाइन ज्यादातर आयरनरुबी, आयरन रैक, आईआईएस 6, और एसक्यूएल सर्वर 2005 के साथ काम करना संभव है लेकिन कुछ संशोधनों के बिना नहीं।

संबंधित मुद्दे