设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 11081|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
4 H4 C% _% A- s! ^  z' n# r. w
) r0 z( r. T5 @* @# I本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
! M. o+ `% s0 @0 k! \* V以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.' v9 Q# D/ B6 h7 N
swarm.SignatureNotFoundException
; i) n, ]* R8 u  w, K( I5 Z        at swarm.Selector.<init>(Selector.java:76)
: |2 @8 T5 x1 A        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
- k, S+ ^+ s$ W/ K2 B9 m        at ActionGroupDemo.main(ActionGroupDemo.java:67)
% s7 y& h7 q9 j7 M9 v7 A$ @; ^( ~+ r5 e$ G2 x5 q- H- {4 o4 t5 H

0 p" w. P+ I0 H5 M' _" B( iimport swarm.objectbase.SwarmImpl;
! X* |8 x3 @5 s' ]2 }% Fimport swarm.objectbase.Swarm;6 f& f" X# j9 |9 H& j9 w6 ^
import swarm.activity.ScheduleImpl;
9 u" O! b3 ]. R: jimport swarm.activity.Activity;1 d! i% d7 h% c' z% C3 y4 B- g
import swarm.activity.ActionGroupImpl;
8 s% |6 Z6 x3 t+ i: {! k, C0 {9 nimport swarm.collections.ListImpl;
; H% x; s, Q6 t- cimport swarm.defobj.Zone;
1 s6 D- L9 ]2 i8 v* h/ B2 c9 ?import swarm.Globals;
% m% o5 N) Q3 R2 \# aimport swarm.Selector;  }, l- o  E" m% S4 x8 I
import swarm.activity.ActionGroup; % n* f, x, f" ^7 b* `4 G7 B% L* d3 u
class Agent {6 e2 _' T$ U" L/ J8 m- J
        char id;
* [3 n, A8 b! y8 f8 ]7 N  p2 Z
        Agent(char id) {
; i5 P+ f  E9 N                this.id = id;
) ^3 `* P4 `. f7 B        }
$ l# ]* R* ~8 k! Q/ g: D% _6 ~- O7 t6 Y; t4 p
        public void agentStep() {
( W( {& u+ y3 i, U3 m                System.out.println(id + ":" + Globals.env.getCurrentTime());
- w; S  A) [2 k! \- c        }
8 ^% }1 s# W$ `" p$ M}6 _2 Y% Y. ~  n1 a

8 A; D+ v" J" I( G( b( U2 c) B- jpublic class ActionGroupDemo extends SwarmImpl {( |  d0 a5 _( `9 M; M( \  ~( D7 t/ x
        ScheduleImpl schedule;
2 o. N: p+ f* O) Q        ActionGroupImpl actionGroup;+ @! l7 e% _0 c/ L2 S* _1 |
        ListImpl list;
9 R, ~: |1 e8 H1 U& X        char Id = 'a';
+ x7 j  i  K. F# O6 H( K, [6 g2 ~- G  ~1 A
        ActionGroupDemo(Zone aZone) {0 k' c9 w( G8 m$ k+ {( h
                super(aZone);* t1 `( J5 X) I
                list = new ListImpl(aZone);5 k* d) d* T1 p
                swarmSetp();
- x2 j- G+ ^) D3 k* e0 o                actionGroup = new ActionGroupImpl(aZone);
  W9 y5 R  S0 P) m1 v/ ]- s                schedule = new ScheduleImpl(aZone);
6 r; h8 r7 ^+ [! r& e                try {
) X7 j* {# Y: Y; `  p9 `                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
. K$ Q7 E. b2 ^# f: f, G                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行% e5 ?. p' `& ~5 }  v; _+ N
                        
" O6 a! }! B2 l/ V  v                        actionGroup.createActionForEach$message(list, agentSel);
$ L# @: v# s. X. V  C7 B, P                        actionGroup.createActionTo$message(this, swarmSel);6 }# r/ Z3 E' ^# ~/ @; x* A, r* z0 T
                        schedule.at$createAction(0, actionGroup);' R& E1 S8 B& r& Q* F! g5 U5 h
                        schedule.at$createAction(1, actionGroup);- W& T( U2 |) b' }% l# ~
                        schedule.at$createAction(2, actionGroup);* E) A) F' |- G, U8 T; k5 x

$ y0 _. B3 o- a9 v1 o: L                } catch (Exception e) {
7 z/ O) j6 I' _7 f                        e.printStackTrace(System.err);8 ?) R6 \' U( R& _' ^* v
                        //System.out.println(e);
, J4 ]" d9 J4 `" |" S9 T' B                        System.exit(1);
1 s# D8 V' s2 ~/ l7 e5 l9 X4 _                }- v  W6 Q: W* G0 _4 r! T$ Q  D) N

4 C6 f  x+ s- U
3 e- ?3 M. U; i& E7 U! H        }
4 h( e& n: H- a1 K' g0 X0 D; ^/ Q6 e& F
        private void swarmSetp() {
1 n( J8 x( d. b% U7 Y$ T1 l) |                list.addLast(new Agent(Id));
* C2 g9 H& W2 g( Z* N  h5 f" ?                Id++;2 s+ M7 i1 D& U
        }
; F/ S6 V* p2 z( o( v4 W" ]' [0 a; ]2 |# x" z1 o) \
        public Activity activateIn(Swarm context) {7 G( U- b: i0 d/ g, H. G4 J
                super.activateIn(context);4 y9 E( p8 d& g* O# X" M4 B
                schedule.activateIn(this);4 H+ b1 u' S2 o/ T$ w
                return getActivity();
2 T2 w/ ]( E/ l        }
) }+ O. \. G5 v6 _% D) t) m0 _1 W, k
  [9 D8 u: I8 u        public static void main(String[] args) {: s, m8 T  l* C! M5 `2 n
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
8 v( h1 j4 |  g6 G0 a, r                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
* |  ]% Z' \, E                swarms.buildObjects();
" S9 R6 S1 L) L  O5 @8 h+ m. o                swarms.buildActions();
+ m. ^3 f) F' e/ }3 q5 \                swarms.activateIn(null).run();3 s& ^/ o7 }4 T
        }# m# N( q1 q# S5 g) E8 G3 s" v
7 J' f6 D9 o4 c. i8 y
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-7-2 12:11 , Processed in 0.013636 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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