设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 5054|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
' P7 Q$ A0 G- @  U5 y& ^2 N
; p0 |, I- T, a0 P0 [6 R4 a0 B本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21) Y% e9 w1 K: g2 B: I3 y
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.: D' w& ?( D* T: w
swarm.SignatureNotFoundException
) q3 Y+ |: r, v+ u2 ?" Q        at swarm.Selector.<init>(Selector.java:76)
; [4 E. J. g, L0 O( o" Y' Q        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)" J. M! d2 Z5 C' P) N# e
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
$ U& N8 ?2 r' x
% L5 C: q( g1 o# p7 x5 @! V- o4 z3 x( R3 J
import swarm.objectbase.SwarmImpl;1 z- D' d. e/ A  Z& H+ ?' ^
import swarm.objectbase.Swarm;* t; c; ]# O6 z; G* b* g: T. F6 d: D
import swarm.activity.ScheduleImpl;
- P9 ^6 a% |7 _9 o9 c7 x% y; `. Oimport swarm.activity.Activity;
0 M, U# m/ S4 z" J; s6 O# X- Uimport swarm.activity.ActionGroupImpl;
/ z5 ]5 r7 M$ m3 l; z& b4 L$ qimport swarm.collections.ListImpl;
- K4 T+ G3 L) D2 Y3 |" ximport swarm.defobj.Zone; . [8 Y. y# r$ j' ^
import swarm.Globals;) [$ V5 W3 K" i) Y8 s# \. H
import swarm.Selector;2 A5 H- c/ v- D
import swarm.activity.ActionGroup;
& q1 t# u4 L9 mclass Agent {3 q% \# r0 i4 W, K, ~- V, Y
        char id;
/ Q) u* v$ Y! P" S0 P" j; l" }
4 q7 y5 L8 i- ~6 ]        Agent(char id) {$ W) }+ L& G& `" g- e
                this.id = id;+ y, y" w# \) s' f& F0 i
        }
( H. B6 k1 L! A6 J
/ f' L' Y( v7 H3 P- M; h" s        public void agentStep() {
- `. G0 z8 o/ v% P# K- t                System.out.println(id + ":" + Globals.env.getCurrentTime());
! ]& V7 b; ~1 L3 J        }/ p2 w4 o' Q( a1 _0 r
}
9 b9 {$ O) S3 ], [$ M2 O& V. r- b9 o& \9 F2 d! K9 `; r
public class ActionGroupDemo extends SwarmImpl {
! ?8 V3 ^; U3 p* e        ScheduleImpl schedule;
# X( g9 I. A3 o3 A        ActionGroupImpl actionGroup;4 Y/ @; f" K) r" a
        ListImpl list;" x$ W0 z( o7 s5 p
        char Id = 'a';" U& p+ ]. v" L6 g- B

( Z. m" ^& ^0 y$ b* l+ a        ActionGroupDemo(Zone aZone) {
6 t& b, p7 }& X3 X5 [                super(aZone);9 u8 {! D" d8 L
                list = new ListImpl(aZone);
8 q, ?2 o4 H, M                swarmSetp();
3 V  @9 F" [$ b4 n2 p. k( h                actionGroup = new ActionGroupImpl(aZone);
% I7 z- V5 ?+ e; W4 ^                schedule = new ScheduleImpl(aZone);
; q4 w" ?3 R0 a+ T  L5 G  v                try {
  T% u0 G/ u$ d& x0 b                        Selector agentSel = new Selector(Agent.class, "agentStep", false);7 f3 G$ y% g; c/ v" z- }& g
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行; r6 ~- w0 x: J! N
                        9 A" d8 q. V9 L& `# t' {
                        actionGroup.createActionForEach$message(list, agentSel);4 _; J- c/ Z8 s/ G( [# L+ e; r
                        actionGroup.createActionTo$message(this, swarmSel);& @0 U% Y6 d! S3 N1 d
                        schedule.at$createAction(0, actionGroup);! C% N) U" R6 `+ G* X: S# O& L
                        schedule.at$createAction(1, actionGroup);
  u7 l8 s, ]& B, l5 u6 x0 V! V                        schedule.at$createAction(2, actionGroup);2 f0 f9 |" Z' P% w7 A5 i7 ]

' @3 ^! Q7 N8 n& z/ l7 t                } catch (Exception e) {
, C% a% f8 B7 E" S5 t                        e.printStackTrace(System.err);
% g$ v3 w5 L8 _, o1 I                        //System.out.println(e);
+ \: ?% U$ R; ~9 H, P                        System.exit(1);
0 t" H+ H0 |! q, m( g                }
+ Z6 v; U; Q/ ^3 v0 Z' i$ y+ A& V1 m9 t7 [) v
0 V/ _# u5 N% n' h2 }5 _& t% ]: J' h
        }
' z) @. R" c& ~) E9 j7 P5 {* M5 g/ ?) K
        private void swarmSetp() {) ^+ ]2 l  _' O. {
                list.addLast(new Agent(Id));# c: c6 j; L6 {, W- V7 k* T+ X3 t
                Id++;; A+ {) s2 k1 L  ?- i; l& c; X
        }+ |& ~; R0 t7 f2 G9 u. w8 u

, F0 E; _$ H: ^% O( q% g2 u$ L        public Activity activateIn(Swarm context) {" [# |  k( m$ p8 N
                super.activateIn(context);) _, ~7 C* V1 u6 a" a8 m6 v
                schedule.activateIn(this);' Q  E$ j) a7 K6 B, q1 B6 g5 S2 v$ Q
                return getActivity();/ N  y* u9 t* w6 O: W" h  g
        }
: \" }  c' g/ g- k) N% g, x7 i9 v9 C. R; N' {; O" e) u! b
        public static void main(String[] args) {
0 w1 d4 R6 y4 D% R1 @* ^                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
) t6 W: X7 E4 j8 q% M- y  f: t                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);- j& p; R" l8 ]+ G
                swarms.buildObjects();5 Z8 W4 U: [- L6 S
                swarms.buildActions();
4 i5 w8 S, h/ H0 ]& f. }2 }; Q                swarms.activateIn(null).run();# }% Q8 X1 w' R$ W
        }
+ k) O6 r2 Y2 S. ~; L7 |# W  ~6 A
* |5 V/ e: N5 [: J0 _7 c}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-11-23 06:29 , Processed in 0.016239 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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