设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 12732|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 * W) M7 G% ~6 z5 \+ @+ c: i+ k4 ?
0 E* G) B9 h. y9 O& h! d7 A0 ^
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
7 w: ~: O- }8 K5 k, I以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.* ~2 ^% y2 v! S' S* N1 ^" A
swarm.SignatureNotFoundException
0 l$ I; A( m6 s        at swarm.Selector.<init>(Selector.java:76)! ~+ Z* E0 Q! ]
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)1 L6 F' J4 L. Y# ~# s
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
0 P4 p( Q1 W$ ^) r0 ?
. B: V1 @8 n: e2 s0 z+ v+ p# E; x1 \$ g- b
import swarm.objectbase.SwarmImpl;% Q  X" `- Z( G+ o) X! z! q
import swarm.objectbase.Swarm;; j. R* e! W7 [: e, _
import swarm.activity.ScheduleImpl;
- R" N2 D! |6 ?% _4 x3 ?* Oimport swarm.activity.Activity;
$ G- X& O- E7 k0 i6 G8 Limport swarm.activity.ActionGroupImpl;
: {3 f) J5 a* V- K, y) nimport swarm.collections.ListImpl;
  g" c8 x5 h) U# @1 Limport swarm.defobj.Zone; / K+ u" X/ z" H6 }- T
import swarm.Globals;
  g3 X1 v, P4 x( ^) p0 ximport swarm.Selector;
; B8 s' f$ l( a" v1 fimport swarm.activity.ActionGroup; * o! @! L) g* A) h  }4 `
class Agent {
5 h% [' P* w& L7 r! C5 _        char id;$ Y) I3 ?( k' O4 J7 g' Y" @
# D2 _5 ~: H6 U: {
        Agent(char id) {# W9 n7 M, l# k* x, ]  T2 v6 n  ?! k
                this.id = id;
5 i+ \( e" h/ T( [        }
" ?& d4 {7 F3 A1 k/ }6 E2 {, Q
. v) w' S4 T- U2 w1 ^! N' K7 Q, e        public void agentStep() {" O6 U8 t4 @  H4 {5 q
                System.out.println(id + ":" + Globals.env.getCurrentTime());
0 C4 v) H% H& B4 e        }! U' i% D# t/ _# N
}8 |; @" H! L+ }" @
* ]8 X- ]9 b1 B; O
public class ActionGroupDemo extends SwarmImpl {9 O9 C/ ]5 @. {
        ScheduleImpl schedule;: \3 u1 l6 a# M" a: ^, S% |- ~* h
        ActionGroupImpl actionGroup;
1 S; Q( ]# w! y1 ]6 l        ListImpl list;. P9 v2 L: b, o: D6 W, p
        char Id = 'a';  _" k, o  }  J9 M- K

- L2 H! @1 k! O" X        ActionGroupDemo(Zone aZone) {
5 t9 {4 o7 \$ q                super(aZone);- N7 |* s7 b( D+ y& p& e7 p6 M
                list = new ListImpl(aZone);. u& ]+ ^, {7 ?
                swarmSetp();' I) [0 S' u) T% i, d# ?( z
                actionGroup = new ActionGroupImpl(aZone);  V5 J" X! s( B3 z0 t. t  w4 X
                schedule = new ScheduleImpl(aZone);# {# L$ w% O# A$ K6 R) L% \
                try {
1 e- i+ Y$ ]3 g- c( `# u                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
# Z: l( B  Q( f# {% A                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行! I- `" U0 \4 ~
                        
7 b+ @* R" b" |- \3 c# ]" Z                        actionGroup.createActionForEach$message(list, agentSel);
1 N4 t8 X3 I3 y                        actionGroup.createActionTo$message(this, swarmSel);
2 D0 u  O, M/ M6 ]7 ^0 h+ r                        schedule.at$createAction(0, actionGroup);# K: q6 d- K, I" {  {0 |
                        schedule.at$createAction(1, actionGroup);
1 u3 g) u/ _) ~* t/ `                        schedule.at$createAction(2, actionGroup);
+ R' b1 h2 X( c; v2 ?, ^
; Z- H% a5 d# m) y9 D2 d                } catch (Exception e) {
( z2 A$ i5 E2 P# D                        e.printStackTrace(System.err);0 f7 _" Z- }: e7 J1 T
                        //System.out.println(e);
8 G' Q6 ]& U- h: \. ^: d                        System.exit(1);
; b5 G, I4 y3 C% l                }( [! @0 q) }" l1 [: e# O
9 i; d. f5 [* t- l! R

+ G/ ]5 {) {5 L9 C$ S        }/ e& f  K  ^+ \0 m

% W, P  Q7 i$ c4 L$ L: W' Y        private void swarmSetp() {( F/ j& f5 L, g' c
                list.addLast(new Agent(Id));( m8 k! H4 T# O8 D9 L
                Id++;% z  S2 ~* q* l% |
        }, ~5 p: d. y1 R6 m. u
' r4 V: R" k4 q4 Z. u% I8 C+ {
        public Activity activateIn(Swarm context) {! v  ^& n/ C, l. O; M# O
                super.activateIn(context);! V. I1 c" d* a9 V" U4 O# p+ w
                schedule.activateIn(this);: Q3 h  X3 ]6 L( Z
                return getActivity();" D/ B0 R9 _/ j2 h$ G
        }) U, H1 b9 @+ I& r  k7 q' ~

  _1 D# H* m* L# i        public static void main(String[] args) {  ?# L) N4 m8 @' a9 t
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
$ _- t5 _6 H! N+ M" Y                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
. r- i5 u2 m, z! C( j$ p                swarms.buildObjects();
, A1 W' P' \$ A; A% J8 Z                swarms.buildActions();: [- A; F( l' @: O
                swarms.activateIn(null).run();
5 O$ R* `( M2 }        }0 y% m0 m9 m+ a& P$ `: W
5 f; B" Y4 x+ \1 x9 O" H1 w: M4 c
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-8-17 12:20 , Processed in 0.016750 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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