设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 9637|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 * J% f9 H5 U' X$ c8 u# Y' Y" u' v

& o2 l1 T: ?* U% {  W* Z+ I! ]本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update214 `8 E  s+ u& H) x7 e5 r
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.2 C& D9 q7 q' q$ P
swarm.SignatureNotFoundException2 V6 t0 @5 h$ I$ u$ X! U! Y
        at swarm.Selector.<init>(Selector.java:76)
6 M" q4 h; M3 m. F        at ActionGroupDemo.<init>(ActionGroupDemo.java:37). U) t8 }/ p  B6 B5 n  E& [( R$ i: B
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
2 z' U+ ~- V# ^& E  Q, f
' J% S" `/ Z. y' L- i( y; e' [. `
5 A1 c, S. M8 A/ |( Nimport swarm.objectbase.SwarmImpl;0 L: ~5 p0 F( @
import swarm.objectbase.Swarm;- P: v. K( [& d* x7 b! F; r) h
import swarm.activity.ScheduleImpl;. ^: F( N! i7 j! M
import swarm.activity.Activity;3 E. @( f% ]+ x+ T$ f* i& _, A
import swarm.activity.ActionGroupImpl;4 e$ }( L7 @, g! R5 S0 Q
import swarm.collections.ListImpl;. ?& i7 o, {7 i
import swarm.defobj.Zone;
1 w3 j4 x2 B+ r, o8 u( rimport swarm.Globals;0 R" V+ l1 ^+ |7 ^* n9 s! T
import swarm.Selector;  p4 `6 T. _& M4 T' o" ~- _3 F
import swarm.activity.ActionGroup; ) Z  J" E/ z, f  [
class Agent {
$ u& e/ m4 o5 p' F% `% W) ?        char id;
: D" h+ d4 p' g6 U9 ^+ B% S
# l' Z( B' v) Q4 p        Agent(char id) {
7 K* M: R* v& L                this.id = id;! [* ^; L; _- v
        }
7 |6 a% j& y5 Y: _4 j& w6 O' L: b! s) E  N- d
        public void agentStep() {
" V0 q3 O) Z: Y- z1 h6 w9 q                System.out.println(id + ":" + Globals.env.getCurrentTime());+ w; p& g) Q! V6 D
        }0 [9 {. U5 d9 Y
}
7 G& \( A# i! s! x' z* M; L1 B, u: _1 t6 D
public class ActionGroupDemo extends SwarmImpl {
& ^' B8 T" Q8 A& [9 q) b        ScheduleImpl schedule;
6 Y& j# o+ x, N+ {6 M, N        ActionGroupImpl actionGroup;
, E( O0 O" `( {+ l8 Q        ListImpl list;! [7 R- e2 j0 Z
        char Id = 'a';/ B* `  O; w& z6 C& L' H
7 s3 v+ {3 l6 }
        ActionGroupDemo(Zone aZone) {9 x! w8 g3 }1 D  K! A6 @8 [4 D: @
                super(aZone);: Z8 k/ L0 y' V1 h! f! Y$ @
                list = new ListImpl(aZone);
8 h3 z: b/ N5 }" y8 Q) e                swarmSetp();% E& P( e1 L0 i6 V0 |$ R
                actionGroup = new ActionGroupImpl(aZone);
0 \" w" a; g& m$ @                schedule = new ScheduleImpl(aZone);% M. c* D8 j9 i. _
                try {/ q8 V) F# f, I1 A+ R4 ^/ a
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
$ f3 k! {/ T& o+ ~* C$ y                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
" }9 c/ O+ j& P$ M+ M  g5 E                        
& i* L, b0 h6 K+ C- v7 L) H                        actionGroup.createActionForEach$message(list, agentSel);+ J& q' ]+ a+ T, C# I9 ?0 p( u
                        actionGroup.createActionTo$message(this, swarmSel);0 ~3 z0 n/ X. l. [5 p" z
                        schedule.at$createAction(0, actionGroup);
3 Y7 H9 b4 Q! Y# X; j- @                        schedule.at$createAction(1, actionGroup);
% Q- Y8 ?* H+ [5 e* x                        schedule.at$createAction(2, actionGroup);
+ g8 E6 G; ], O! q" J& W9 Y4 w$ E
" J2 i! D8 o0 Z1 T+ H" V- G                } catch (Exception e) {
7 q# J+ D% o8 y) {/ n: u                        e.printStackTrace(System.err);
- k& p( ~- k2 B6 ]6 j% f9 P- u+ V                        //System.out.println(e);4 w: T5 T, m/ O+ l8 x6 S/ K
                        System.exit(1);
4 h( f; C) f1 x3 Q                }  \# C% @1 Y% Z5 L2 x) U' ?& D

2 n6 }+ ?: v# B& A5 _' w
+ @! ]+ \" {( D# I( U        }7 J; s: K- `) r& L- Z; u$ C/ S
* A* c0 P. U; j6 G. U
        private void swarmSetp() {
5 @7 z! {. i( \. j0 s4 h                list.addLast(new Agent(Id));7 B8 K( A8 e" U$ U; N
                Id++;; ^/ H  A0 j4 u. J; a& y+ v
        }! a1 Z; c+ p3 h% A* C
1 s4 a( ?" ]' l, p% n( K, }
        public Activity activateIn(Swarm context) {
( T) X2 C, A, E8 [                super.activateIn(context);+ ^& {' W& f2 a, O0 v
                schedule.activateIn(this);
0 s4 G( P9 C) r                return getActivity();2 P+ M5 }0 ~" d  _; D
        }
( a* o4 y9 q- m! H0 n1 P' U6 ?1 \" c9 J0 A& e; s9 V1 P( ]
        public static void main(String[] args) {$ |9 X, \% ?7 [+ m, g7 D* d1 R
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);* x/ V+ l. j- g* w: E% \
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
% Y8 }1 i9 S1 f. T, O                swarms.buildObjects();5 e' z& r+ M- s4 t! }& @
                swarms.buildActions();
( r5 W( `+ s- K3 {! e" a- |                swarms.activateIn(null).run();9 a1 c* o$ U  s
        }
+ ^  |+ o. [* i3 a+ i0 d2 c9 e2 Z' u) ^* r3 n) u
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-5-17 19:40 , Processed in 0.017141 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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