设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 12112|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
' _- l' b8 E7 K8 c1 c0 ?
- `4 n3 N. B, T3 E本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update212 S3 H+ W/ J& ]
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.9 ^9 L) k1 P' Y4 V
swarm.SignatureNotFoundException
6 P$ q, l" B- B        at swarm.Selector.<init>(Selector.java:76)) B6 W8 z4 ^1 `0 w2 @
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37), y+ e0 j. k9 n; w
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
0 T9 x1 b3 W  a" h+ |/ M# q& u* a2 `+ z0 E; h6 _! {9 h
4 S4 ^" N; j3 f5 F, j
import swarm.objectbase.SwarmImpl;/ q- N# ~3 T: \
import swarm.objectbase.Swarm;
$ D. K2 a4 o% q9 l3 R  G- Oimport swarm.activity.ScheduleImpl;
$ \$ F8 ]9 L/ w- \- o- p8 Kimport swarm.activity.Activity;3 k  {" o6 P  z% I% p
import swarm.activity.ActionGroupImpl;$ b# A! S: L7 z
import swarm.collections.ListImpl;& e7 D$ B9 o( C+ m# @/ T" U- H5 F, F5 q
import swarm.defobj.Zone;
9 J- A% ]: n' Y8 l3 l1 oimport swarm.Globals;
$ O2 k/ W& i7 T% ?4 J/ Jimport swarm.Selector;
% H/ p6 l% o, d% I+ _import swarm.activity.ActionGroup;
2 L1 I* D% C- I7 }class Agent {6 k9 h0 \5 G' I# P
        char id;
6 U$ e( t/ u3 @. V1 s4 N0 i  R& B
4 `- d' f0 f' H        Agent(char id) {
% P3 Q0 y% I, X6 O% _3 o                this.id = id;+ |$ X/ _! b# Q5 J$ T1 D
        }
% V( l- ]# H8 c3 k3 r) `* N% b- L# ]" Y9 O, b. z- G
        public void agentStep() {8 B7 J6 J6 d$ W! L" a2 w
                System.out.println(id + ":" + Globals.env.getCurrentTime());
% b3 h% H% Y! }# k. ~        }) s# a" N1 t$ N1 L$ x) L) {) V& x
}
0 l2 ~: p2 g% b; E) {2 D8 ]* B0 \9 Z/ }
public class ActionGroupDemo extends SwarmImpl {$ }. i0 ^" Z$ s6 g
        ScheduleImpl schedule;, V" q* e% j! j) P4 Z( O
        ActionGroupImpl actionGroup;
% }4 i4 T- q7 I/ R        ListImpl list;) B7 D/ q! V% i' _
        char Id = 'a';
7 x7 r0 I3 m! C! ]5 j. s
2 ^) ^' s4 X4 n, B0 a5 R, D2 }        ActionGroupDemo(Zone aZone) {
  ?4 ?) h, n; ?& h4 F: o# |! @                super(aZone);5 {7 [+ j' S/ a; d8 ~. a: Z
                list = new ListImpl(aZone);
0 i9 q4 A  h1 _! s1 F, }8 p                swarmSetp();8 e: }* \5 c0 e1 ~# W/ h
                actionGroup = new ActionGroupImpl(aZone);
; @2 {$ O1 f! p  z& s2 I. t                schedule = new ScheduleImpl(aZone);
- }, g) t4 n3 J2 P  |" v                try {, }# W9 f1 T4 X% t+ {, ]
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);1 e! z+ o- o  E& D4 j
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行, ]7 P4 m0 m9 C
                        ) f$ f6 k! B: X$ h1 k) O" M
                        actionGroup.createActionForEach$message(list, agentSel);
! D( o5 R% _% Z5 {# [" J$ u                        actionGroup.createActionTo$message(this, swarmSel);
- k$ _8 ~% [; i5 b                        schedule.at$createAction(0, actionGroup);) e  d2 Q8 T9 q8 k+ w, B0 H
                        schedule.at$createAction(1, actionGroup);
# a! m. t% X1 k: V7 J8 Z                        schedule.at$createAction(2, actionGroup);
3 t* P: y1 A* S$ \, x% b$ s: g6 T* s% w/ @3 F' u# T
                } catch (Exception e) {/ Q$ U6 R' g0 K8 p
                        e.printStackTrace(System.err);
# ?. N- H" J" h- h" l                        //System.out.println(e);
& f2 m% f, a. W6 Y1 U                        System.exit(1);/ {: J) Y7 {6 R( }3 Y
                }
9 p1 w! J6 }; ]7 ^! e7 o4 m# ?6 q2 P# }6 R8 v
. r9 N  X1 ~0 t1 v6 ~, Y4 [. {5 c
        }
  h0 ?9 Z! h/ x& Z6 y9 n$ V: F: @( V" C+ j6 A( P* \5 ^1 R+ y0 ~
        private void swarmSetp() {
/ C) Y/ F7 V( B8 j                list.addLast(new Agent(Id));  [2 t8 i- b  r' n* g
                Id++;5 [/ i  r+ R3 V3 o* i
        }8 d+ {1 {2 T& `9 A" ]

% f0 `# r) a* l5 q3 l6 ~/ z        public Activity activateIn(Swarm context) {
, v7 n3 m3 t; [6 ^4 ?: D; ~* h                super.activateIn(context);9 @/ Z9 @/ Y/ N
                schedule.activateIn(this);
: y9 A$ w9 h6 k9 `4 D                return getActivity();: P. m. i' l# y/ W+ c3 v6 M
        }% ^( l. m, T; J( G- M- \2 H
8 H: |0 y0 f& t* t) W
        public static void main(String[] args) {
- r, ~9 }/ c' Y. S0 M' d                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
% [7 w) C% J/ o1 \% c                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);8 W- w8 d2 B4 L% O
                swarms.buildObjects();3 ^8 `8 H3 v; B1 g& T3 \
                swarms.buildActions();
1 p0 C; L6 c# z% H                swarms.activateIn(null).run();- E- _9 W) l: J: Z* D/ X0 E- f5 E- F
        }
9 P; X9 m2 I; S2 C' s0 J' y0 a" r2 F' f
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-7-30 16:58 , Processed in 0.015693 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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