设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 6433|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
0 v* Q8 Y6 m" G6 y0 M. q! ~+ v2 |3 Y; X: L
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21, R2 r2 V  n1 B6 b
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激." q; ^0 h( ?# d3 X4 Y$ q9 i; A' T& j
swarm.SignatureNotFoundException6 H/ X- s9 a; w
        at swarm.Selector.<init>(Selector.java:76)
; n- |6 o; o0 C6 P        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
( j6 W7 z. A6 F/ t. _7 S* C% w- B        at ActionGroupDemo.main(ActionGroupDemo.java:67)
7 ^' s, f" j# y3 i$ S% T7 F  V# w+ B8 F1 E7 o: K7 d: ]! t6 W
4 ~: z1 `3 Q, `" o# i
import swarm.objectbase.SwarmImpl;1 I' C  X! w! A2 ~( }/ o* E5 W
import swarm.objectbase.Swarm;2 b" q& \6 e/ `
import swarm.activity.ScheduleImpl;# Z6 u- j: ^- N9 ^2 E
import swarm.activity.Activity;: k0 F0 \- O, u+ z( Z: D! V
import swarm.activity.ActionGroupImpl;- E0 Q, _2 Y; S( T
import swarm.collections.ListImpl;$ S# l+ B0 H2 {( D0 |) t
import swarm.defobj.Zone; : y; r& x! W4 T; I+ u
import swarm.Globals;
3 s+ q/ w* R( {5 r1 B0 Rimport swarm.Selector;
* e# L7 `0 ]5 f$ C, S) |import swarm.activity.ActionGroup; / s. o2 ]# Z$ |- n* I$ Z5 n% A
class Agent {  `0 V6 q/ r7 @2 b
        char id;
. H& D3 k  n! H9 Q- R# c* ?
" R! A; x  p, o6 J! X# o        Agent(char id) {7 s6 Y& A* T+ c+ b+ K( s
                this.id = id;/ U" N( y2 k6 N# N" q1 X" Q
        }& s' E8 I) `  F* B8 N9 _% o
1 [! u0 v6 _" q# o# k; ?
        public void agentStep() {
3 c5 w! @0 R* y, ~7 b                System.out.println(id + ":" + Globals.env.getCurrentTime());" L6 M% o9 {& f& _  Y
        }! R7 Y+ \; [1 n
}/ y* t" J; o0 D
( z% ?& |4 v. A! i5 n; K
public class ActionGroupDemo extends SwarmImpl {
( m. f6 |6 B" _' q' y- O7 T9 ]        ScheduleImpl schedule;7 c" p% d% _( M5 f- T) i
        ActionGroupImpl actionGroup;
+ Y9 ~' a9 f9 R2 b; I- A3 p5 @/ J        ListImpl list;
# l% C  p, [) [  W        char Id = 'a';
1 l8 C/ p7 w2 y& g6 K6 l* K. M6 }$ B& W0 t8 @. l
        ActionGroupDemo(Zone aZone) {
8 K' J1 o+ O5 a( l! e+ y1 I                super(aZone);" H8 }9 U( |" Z' F7 K7 q0 w
                list = new ListImpl(aZone);
5 l2 X' _+ w3 Z7 Q. M  i                swarmSetp();
# W7 u6 S  C! J4 T+ G                actionGroup = new ActionGroupImpl(aZone);$ \, n  a% C' X- w2 H1 g6 R
                schedule = new ScheduleImpl(aZone);
, f. J6 B$ \# }9 [1 y# F                try {8 \$ y( h% M5 q
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);1 Q0 T  A3 d: c0 m, F6 q- @; B$ ]
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
' \) ?/ K: s4 I& [3 L                        6 A1 S2 v6 C) `6 [& U
                        actionGroup.createActionForEach$message(list, agentSel);
$ C$ J  O) D; m( [  V' i& l5 t                        actionGroup.createActionTo$message(this, swarmSel);
( n& C/ k8 W8 S  J! @                        schedule.at$createAction(0, actionGroup);9 \5 v+ t- x% R4 Z$ q" }" R, _3 f" z
                        schedule.at$createAction(1, actionGroup);
7 Q$ \) k; g6 a4 Z! S, p: n                        schedule.at$createAction(2, actionGroup);8 q; q8 L* u/ d
! |9 b- \; q8 `, r% z" B
                } catch (Exception e) {1 |  u* A- d1 r5 Z! m- o
                        e.printStackTrace(System.err);- t9 b( E. w6 `9 {. j$ E
                        //System.out.println(e);3 ~* Q0 G& q' D
                        System.exit(1);+ A/ F( }- R; V, @' m( L: N
                }, R6 `: G: d9 X6 d& n
, a5 b7 u9 U- t* g7 ]
! U4 f: M3 H9 c/ w7 A
        }
: R0 B9 I. @/ n/ z0 Q4 R
  R! P$ r1 a9 u$ P. Z8 w( c        private void swarmSetp() {
% w# j2 y: `. y4 _1 h& c                list.addLast(new Agent(Id));
* ~/ D) V5 P% e                Id++;+ }3 {7 r6 z7 h; |% u6 T% ~9 c
        }
  ]9 G* |7 U1 r' r7 I* Y2 P$ j/ l; K# z1 Z! a4 N! E+ c2 v
        public Activity activateIn(Swarm context) {
% `: y& p/ o& h* a1 t4 ~; |7 a                super.activateIn(context);9 ]+ Z: x( i" t
                schedule.activateIn(this);
$ e7 I, B) E5 ^                return getActivity();
+ R) o$ |+ _" ~% p+ P* R  m        }
0 K% i' b6 P6 m+ G; o, T( ^' H$ ?$ Y, `7 d. a4 f) D
        public static void main(String[] args) {
1 u# K; C3 v1 {5 `1 J                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);1 j9 k% g4 I2 e2 Y  v
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
. e! s# O4 s% \& F( [                swarms.buildObjects();
; D7 o( ~$ ?+ ~- Z* ]- N                swarms.buildActions();
3 o/ y7 E  ^7 _4 C2 {- h" O2 @                swarms.activateIn(null).run();) R) Q, S) A8 G
        }# W# E6 ?5 W* U  h; C

9 ?2 F5 ?+ L2 l2 {6 W}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-1-28 12:52 , Processed in 0.023570 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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