设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 12393|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 - h9 _. x, J' h1 v# L5 ^$ g: K- U
, t3 s" g% H$ }2 F% I
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21$ h* n8 @! u4 A' w  P
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
9 N* `# |' F9 O7 v" vswarm.SignatureNotFoundException' O! W7 Q$ T  X/ \( U; o
        at swarm.Selector.<init>(Selector.java:76)
" o1 n# j+ x8 ^2 Y, J        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
0 V/ S1 v) t+ U! u, ?3 ^        at ActionGroupDemo.main(ActionGroupDemo.java:67)4 _' l1 ~9 c  ?( W4 Q: j" r- p) T. ~
" o' n& u5 f! ~
8 \* R1 K* g( m- j% Y) _
import swarm.objectbase.SwarmImpl;3 N- H0 O$ W( Y5 N6 L
import swarm.objectbase.Swarm;
- t. h# g; f5 u: F+ Y& r- fimport swarm.activity.ScheduleImpl;! u, A, H6 X0 {4 n
import swarm.activity.Activity;
6 T1 q$ w# A  c$ V7 J1 E* c3 c* Dimport swarm.activity.ActionGroupImpl;' G8 A( @" l4 k4 I- j) D6 z6 ]" H
import swarm.collections.ListImpl;
5 ]8 ?+ Q- `5 ]0 wimport swarm.defobj.Zone;
) Z' V" H: m' fimport swarm.Globals;# i+ ?$ F& ^1 M
import swarm.Selector;
! q2 H# y, c3 [4 u8 Simport swarm.activity.ActionGroup;
5 |! i9 t! E) d! u2 Nclass Agent {7 \# H  S1 a& m7 n( S/ [
        char id;
& G' E( i! D2 s& G' P, A( K. E% i) d0 o5 H
        Agent(char id) {3 m/ S) J: C+ U, Y: O2 q; w: m! ^
                this.id = id;
5 l' }- Y0 r; `3 [5 D" x        }
* {! _- ^- v! x+ p, S  ^6 x7 G  \4 r; A6 z8 E
        public void agentStep() {% R+ Q3 S# L( w" q- I/ m( F- I
                System.out.println(id + ":" + Globals.env.getCurrentTime());
) s3 q% ?! b1 i$ h2 f% B  i        }6 o; ~5 I# ~0 c+ ]1 J8 L4 O
}7 D6 Q+ D: J; E% q

1 B% o1 n& t' a3 B( C: c6 ]public class ActionGroupDemo extends SwarmImpl {
: @7 o1 y- I4 |, S: j        ScheduleImpl schedule;
/ p. f, z8 h! w) u! K7 s9 F        ActionGroupImpl actionGroup;- M: B! p2 T/ w  M8 k5 R: L7 W
        ListImpl list;
5 I2 |0 l) s+ Q        char Id = 'a';* [# }, \; E/ z' r; E. z
% Q4 Y$ J9 \4 u1 b4 S/ F
        ActionGroupDemo(Zone aZone) {
. x; _; {6 X, T* U                super(aZone);
" w+ `8 C9 ?, U  {$ V5 S                list = new ListImpl(aZone);0 K  y* e, K6 y2 }" A6 X3 S  i
                swarmSetp();
, b0 j! A; N- b5 A0 }                actionGroup = new ActionGroupImpl(aZone);2 b1 X% X! r; U7 ?1 ~
                schedule = new ScheduleImpl(aZone);3 \# R1 D, `0 |) C5 B
                try {
4 j4 s6 O  a( B  o, [3 S& u4 l, D                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
% w) l+ P# f# \  l7 C, F9 o                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行6 f) n# b+ \1 o7 j7 ~' _
                        & F5 a/ S# [- l1 j$ _5 e
                        actionGroup.createActionForEach$message(list, agentSel);6 ^8 J9 d6 y. _5 l0 w
                        actionGroup.createActionTo$message(this, swarmSel);
2 N2 O8 o& f/ _1 `, ^7 Y                        schedule.at$createAction(0, actionGroup);
, w4 p/ A+ c5 g2 b- F% p; z                        schedule.at$createAction(1, actionGroup);
4 j9 L4 f$ l" {1 n2 ]2 S  C, U                        schedule.at$createAction(2, actionGroup);
% s# Z9 I1 m4 B& D/ s$ q* \
8 d  |" e, D. F* L1 H0 Q) d" m                } catch (Exception e) {
: _9 y9 \0 z, B+ C# E                        e.printStackTrace(System.err);1 z) I+ Z8 q4 c6 w" `) f
                        //System.out.println(e);" b0 J: x. w) V: o
                        System.exit(1);( t! S1 E! c8 L: N. x
                }
( t& O. U& N/ L  h- F- x1 E9 [9 p9 Z9 ?& K( ~7 Z- e( O
: `. i9 a4 }% w
        }. q, `/ S5 t" g- c# Y4 ?
8 u, b) Q" R5 b9 b# u. e) O( c' D- I
        private void swarmSetp() {
! E  @7 o# A# u+ z; c: P                list.addLast(new Agent(Id));+ Q( U) r- a& f3 N, ~% h6 s% S6 a
                Id++;
4 e& Q" Q" \0 n" l        }
7 D) m8 K$ T+ R4 J5 j" w* X4 f3 ~9 B, u9 Y
        public Activity activateIn(Swarm context) {
, k' R8 y5 Q2 @+ t; u  F$ p                super.activateIn(context);
. d2 N' H3 w( W% w' t+ Y, A                schedule.activateIn(this);
* E1 x9 b: k' L% Q3 F                return getActivity();) }% K3 ?+ `. J, E6 m3 o
        }& F  U) ~- i- ~2 D; y) n, G
4 p7 Q( Q* h8 `7 ^; v
        public static void main(String[] args) {, C6 |( l0 \5 A  _1 b* V3 Z
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
! w: I! l# E1 w9 s* \8 y                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);0 w! H7 @! ~3 z* X
                swarms.buildObjects();
9 B! l- l+ j$ c! z) K                swarms.buildActions();
4 e$ ~* G0 M5 u3 h6 ~                swarms.activateIn(null).run();
6 N- d- x- e% P* ~- ^% W) w        }0 h% t- _5 P" J  s2 R' f: I* x5 M

  l8 }2 h& f9 B! J}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-8-7 10:00 , Processed in 0.018042 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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