设为首页收藏本站

最大的系统仿真与系统优化公益交流社区

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 8780|回复: 1

[求助] 总是出现swarm.SignatureNotFoundException错误

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 3 z! W$ a) B: f+ l
$ G: n, m6 L$ K: h
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
9 ~$ O1 A3 ~- ]6 M3 g2 W$ E- F以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.3 i+ l* Z& n) a( c, e, P
swarm.SignatureNotFoundException. G# J; w$ ~- m8 F+ N# v
        at swarm.Selector.<init>(Selector.java:76)# n9 S0 ~6 C2 F" l
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)& f$ f5 r0 g  M/ S
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
0 P1 g5 q" x, A  j9 F3 b) z8 S% W8 |: l1 M
/ i: o& @. i8 ]% A, M+ |
import swarm.objectbase.SwarmImpl;
; o7 P( W( ]: h" |import swarm.objectbase.Swarm;6 U7 K5 m. z- F8 x7 y
import swarm.activity.ScheduleImpl;5 F1 ~& d3 W# u
import swarm.activity.Activity;% |4 x$ e" _2 _8 d3 I
import swarm.activity.ActionGroupImpl;' `- W  a! k5 C
import swarm.collections.ListImpl;  Y0 Z; g" B! w& h0 Y" e2 A
import swarm.defobj.Zone; ' n% n& _6 _7 E9 c* u
import swarm.Globals;6 p7 {( r$ z2 [0 Q
import swarm.Selector;) Z& V( r: f* H$ S& I' B$ H# V
import swarm.activity.ActionGroup; : v; m8 D' A' K# U  a* P3 Z
class Agent {; T! A1 _3 a1 O
        char id;
3 u+ [4 o$ F6 @, T9 i& c1 N8 z! B
2 B$ Z3 x- P' o2 f. l: c        Agent(char id) {" R, s* H2 E" c
                this.id = id;
  z4 [1 T. ]8 {; L' m$ V        }
% [, N- v- i% h" m0 n6 P
, r% R2 f' u" z- ?/ n; g        public void agentStep() {( l  x" H$ L0 P6 J" j: q
                System.out.println(id + ":" + Globals.env.getCurrentTime());; H* P9 j) q! v) z0 r" Z
        }
) T# U9 f$ z& L) |}
! E  }/ w/ P) z: \) k' K4 \5 ]& T. ]6 g2 g
public class ActionGroupDemo extends SwarmImpl {8 Q0 x" B5 h/ f7 ^, m
        ScheduleImpl schedule;: o5 h* l7 p% i4 D7 u, j8 D
        ActionGroupImpl actionGroup;9 E( B: k: [) o' K: Z' _
        ListImpl list;
3 C! X0 S1 X: A2 o& P3 f5 E        char Id = 'a';4 I9 `+ r: p4 G+ j" `
$ J  C1 ~% P7 T; i) j, w3 y$ p
        ActionGroupDemo(Zone aZone) {
* }& C3 j+ j3 Y3 g' q( A, K7 z$ c                super(aZone);/ q+ M3 m- N9 n( X9 o
                list = new ListImpl(aZone);
) C( B& g; o8 m& k3 s                swarmSetp();
5 t# a' k; U' v  C( u& b                actionGroup = new ActionGroupImpl(aZone);; L( a0 i2 L* S% F0 C. J
                schedule = new ScheduleImpl(aZone);2 s7 e! T) R" u  q4 r# ]3 j
                try {
1 X  T5 T. V5 d) o, O" z* t7 c                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
2 _4 u( E  }5 h                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行" k) ]! b- V6 ~; n7 t
                        
3 d( j+ [4 ~# N% @+ V                        actionGroup.createActionForEach$message(list, agentSel);
3 w) h" }. U, e" z! p! G* \& G                        actionGroup.createActionTo$message(this, swarmSel);
+ o5 ]3 o. U" j/ i/ _' S                        schedule.at$createAction(0, actionGroup);% D# w/ C/ l0 D% A" A- t
                        schedule.at$createAction(1, actionGroup);* G/ a2 T2 O* M: n
                        schedule.at$createAction(2, actionGroup);
1 K4 b( {: F* e$ l3 i% z! u
7 g: K9 ^; Q: S( `# J1 k7 Z7 X: Q                } catch (Exception e) {
8 x) v) W) W6 f                        e.printStackTrace(System.err);0 h; e! O2 {& x) S$ C8 V6 A( K
                        //System.out.println(e);
% Z, {+ P  G# I                        System.exit(1);) Z! o7 z3 h& @
                }, R! w5 \2 b- N$ }. }  V

: Q1 A# P. `! F) f$ b8 t1 H
1 c# e# F: o" M- p$ }$ X" _        }6 Y; t" m" N$ R9 b- B
$ d  [/ r, w! O+ p& h- W5 Y
        private void swarmSetp() {8 v" D% z' l. A8 _: f6 M
                list.addLast(new Agent(Id));
  }0 C4 u3 a7 j+ O1 Z% @0 {                Id++;8 {* v1 D/ L( f& f
        }# `! Q! ~$ `( c7 L8 w+ u
$ ~+ Y& X0 _+ }1 u, S: ]
        public Activity activateIn(Swarm context) {+ T- j6 i+ a: y/ |
                super.activateIn(context);/ q1 H0 K* C, ~: ]
                schedule.activateIn(this);4 o! J9 p6 P6 \- l4 M; d( g' l
                return getActivity();
1 n+ f- c4 o% _, R5 X; a7 L; S% Y7 ]        }! J8 K3 T4 t! F% P7 W2 z
- U' o  h( Z) ?* b0 H
        public static void main(String[] args) {
0 ~3 [0 ?0 Q& E2 u, d                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
1 {5 L+ O& W' ]# }2 g$ e# b                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);- d( q) c4 y6 F/ [
                swarms.buildObjects();1 t* M# `" s- r8 l! h/ c9 ~4 n
                swarms.buildActions();
, r- p# I) `) b                swarms.activateIn(null).run();
% T4 L' p2 U) f) r        }% K* S) J! U$ @6 A6 z

% P/ j9 k% u# f. i}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|Archiver|手机版|SimulWay 道于仿真   

GMT+8, 2026-4-22 15:00 , Processed in 0.015757 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表