设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 10154|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 ! e0 ?0 p6 N* j  T8 R

. A; q, m1 `# T本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21* A( L/ e  H: R. |5 w( b
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.1 m$ ~6 j8 e7 O6 b& g
swarm.SignatureNotFoundException
; I" q7 g! |8 G) i3 M        at swarm.Selector.<init>(Selector.java:76)
" Q2 j& W) B9 U        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)6 n4 P9 F0 w# {( o" V/ k0 c! u8 v7 `, r
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
1 {: R8 G5 B" j
( z" s4 U) |7 V1 p2 |5 @" ?6 O2 s4 ~; a
import swarm.objectbase.SwarmImpl;: O# l) M; @5 n$ {  U2 V/ I' i. `& Z
import swarm.objectbase.Swarm;0 J5 w# [. ?' Y) {. V
import swarm.activity.ScheduleImpl;
* u% W/ @: \" ^  p2 ^& ~5 Yimport swarm.activity.Activity;
5 X9 b3 @1 W1 I6 ^import swarm.activity.ActionGroupImpl;3 j: T0 v& T6 s! q( Z5 E
import swarm.collections.ListImpl;
3 h# X8 y& }  timport swarm.defobj.Zone;
5 D3 }9 J5 A: _8 yimport swarm.Globals;
; A7 n4 f  @- jimport swarm.Selector;% L+ M% w- E* y. ~/ q% _
import swarm.activity.ActionGroup; . C" b* \$ X( q
class Agent {5 f! O! s! ^1 N7 B' Y8 H
        char id;
4 X2 S. k; Z& \, q+ |$ t( Q" `/ ]1 s+ H2 p
        Agent(char id) {# I0 B; M+ I9 T$ A2 c1 F3 z
                this.id = id;
1 D9 E$ A2 g. T) i% g! ^8 g        }" S! T8 Q; K) c4 c( }+ z

- A8 ~. b5 H# W( D& v1 W: E8 R        public void agentStep() {
5 ]7 `8 I9 o+ @& g- }                System.out.println(id + ":" + Globals.env.getCurrentTime());
  F0 P0 [0 `8 f, _9 G* C        }
! w: G0 c- H8 w3 @}1 r  Q& B& x$ V1 u6 B+ M" o

" P: D0 K- w6 Tpublic class ActionGroupDemo extends SwarmImpl {" W1 K  a/ s; ~7 Y+ D
        ScheduleImpl schedule;
; D" _8 }) s3 ~9 W5 U% q/ X0 i        ActionGroupImpl actionGroup;
" ~& H4 I: j+ r$ h7 b* E        ListImpl list;
- a9 r7 X: ?. H        char Id = 'a';
2 Y% `9 ]6 ^. u0 L' W6 [- P1 S6 F+ M6 Y6 D3 x; G
        ActionGroupDemo(Zone aZone) {$ Y, Q, G! ~3 ]) z! p% ?* i' [) C
                super(aZone);
/ B* T4 N4 f: k& g5 ]+ @* u/ H                list = new ListImpl(aZone);) X: s( z; K2 y& K
                swarmSetp();, y( e. \& o, @6 v# k
                actionGroup = new ActionGroupImpl(aZone);
' {# @8 T9 l0 k' k                schedule = new ScheduleImpl(aZone);' ^0 x, L9 d9 g- q$ O! J' _/ v% u* a
                try {$ x8 j; _9 e" H. N+ |/ I
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
/ y8 K; b0 k* T; z& _. \1 Y                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
$ W( c) ]! F. C/ @$ D1 `                        
6 Y, D' A5 Q* e0 R" J                        actionGroup.createActionForEach$message(list, agentSel);& Y  L! W4 K% k
                        actionGroup.createActionTo$message(this, swarmSel);, U! ~8 X/ D# R
                        schedule.at$createAction(0, actionGroup);: r, G3 a" A1 |- w. M
                        schedule.at$createAction(1, actionGroup);
% p& P+ S7 H6 A8 J) ?                        schedule.at$createAction(2, actionGroup);8 i) T9 L: X6 s

0 G& B) M4 u: G2 M5 D9 Q                } catch (Exception e) {
% J& |1 Y7 B% s7 V  |$ U                        e.printStackTrace(System.err);! f6 E  |9 `9 ^7 k
                        //System.out.println(e);' L7 ?  V/ B0 ^) ?5 y. ^. P
                        System.exit(1);  Y8 {! g" D7 q+ y# M
                }
/ F" F* [, A2 K8 ^: X- U' I; ^  f: G) r1 H1 B+ D3 U- r4 C! e. \0 B
! V4 F% W/ a/ U" \* U+ l0 g
        }. Q: d4 X& m$ {; ]& s
0 _  w4 V2 F5 h) D. i
        private void swarmSetp() {
% _+ l% S( y% V1 d" f& z' H                list.addLast(new Agent(Id));% V8 B1 T7 T" K! d7 ^& M& V# M
                Id++;
% r2 f8 g$ |+ i- }  P# G        }' z7 ~" j7 c, `( ?+ n

. ^7 Y/ U# N  C! m9 @. q+ \  ^        public Activity activateIn(Swarm context) {4 ~0 _$ z6 y' `  Q
                super.activateIn(context);
( q8 K% A7 _! Y6 a# e1 G4 O                schedule.activateIn(this);( G  M" D. I( E
                return getActivity();2 i6 Y$ R1 t: j$ @& T2 W( O
        }
/ z% r0 d: I% x; z9 C
8 s$ F# J- K: ^  M2 @% p        public static void main(String[] args) {
% ~( K% K0 W- d( t+ E: r- i4 M8 o                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
2 B" \1 d& e( F  W                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
- a: A" Y3 ^' [! Z& @& Q                swarms.buildObjects();
9 i, R4 H# g5 R- [' r. P% @                swarms.buildActions();
' h+ r  `- E' J6 E; n4 u* j                swarms.activateIn(null).run();
: A( X2 R' g5 r/ a5 S        }7 s% m8 {8 l! E8 ^" A- x, s% `4 J; M
6 ]% y$ t0 ]% ]$ u2 E+ j
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-6-5 13:08 , Processed in 0.016205 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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