设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 12191|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 % g7 ]) y7 c" L9 s3 A4 a2 ^6 D
1 V4 c) E) k" o0 q8 R8 V9 i
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update214 G) x. a' k) h2 D
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.: G; Y" s; j: @* p
swarm.SignatureNotFoundException
; ?5 k( a  |, N" |6 {) v6 I# J        at swarm.Selector.<init>(Selector.java:76)
$ ]9 z1 t4 i6 h; b0 t( o, k        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)" x' b; I) ^. _$ k: X; q
        at ActionGroupDemo.main(ActionGroupDemo.java:67)1 C6 O9 d9 z6 T9 e/ i- [8 `; W
* O6 C% w' B* M4 v4 {& q$ Z
, g- P6 I- o( S+ v- b; o0 n& f
import swarm.objectbase.SwarmImpl;4 U! k. K+ {2 X$ ?
import swarm.objectbase.Swarm;
7 V8 k- A$ P) e  T0 ?" Nimport swarm.activity.ScheduleImpl;
& ?0 y! C$ |/ m) A6 o2 Simport swarm.activity.Activity;/ w7 k: C+ {& @! D" Y6 \! S' f( g
import swarm.activity.ActionGroupImpl;: j- ]' h6 p: `; G& c3 }7 i+ @$ l
import swarm.collections.ListImpl;# y, G! W8 R- b  N6 O7 L2 ~0 A: S( f
import swarm.defobj.Zone;
9 o2 G  I9 a4 F9 jimport swarm.Globals;0 j2 ?5 ^1 N( ]& [
import swarm.Selector;
# z' j+ i" y7 S) Q' @# Jimport swarm.activity.ActionGroup;
1 ?" b# Y; @4 k6 I' t0 Vclass Agent {
) d. ~; e! _8 i! F3 A/ J        char id;
7 L. q. M6 K6 V$ o3 F4 ~! F
' k. D  u6 F- ~4 b3 c7 T1 c' y( e! e5 n        Agent(char id) {
- y4 T" j5 v  S1 x/ s* h# z                this.id = id;
; n- s! j: k1 u, I7 {- i        }" Y$ P' j7 a& I6 M
8 _/ k& \+ Z' I# X+ {; d
        public void agentStep() {
, Y9 @! h  _  r% L# e# ?                System.out.println(id + ":" + Globals.env.getCurrentTime());
" n! q) [: _7 ]8 I        }  r* L, V* Q! Z+ I) k
}
# H" c4 J8 n: Z: f2 Q1 B6 I4 V. W% G; G  r' _. ]
public class ActionGroupDemo extends SwarmImpl {' u8 {7 }7 r! w" o8 Y' E1 W
        ScheduleImpl schedule;
- R5 W, Y9 ]8 [) n        ActionGroupImpl actionGroup;% r) a' P; [7 p; H; p( b6 I
        ListImpl list;' @  a: ]" R5 x1 ]) v' t/ }3 j; T
        char Id = 'a';
! A. V2 _: b) a" x4 Z
- f+ s0 h2 G4 k, p; X        ActionGroupDemo(Zone aZone) {
9 `. z1 A5 G! ?( j+ s                super(aZone);+ M7 Y# R4 {5 t: ]3 r/ ]
                list = new ListImpl(aZone);) _$ A' {6 k) P6 q( m, D; k- n) a) v
                swarmSetp();8 i" F# r2 f, `! a& k8 j' \
                actionGroup = new ActionGroupImpl(aZone);2 b6 @9 c+ [) _9 u9 u
                schedule = new ScheduleImpl(aZone);
4 {1 {0 o* W% ~8 p7 }7 n8 z                try {
( a7 m( t& J% z, H                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
8 O* `. J' B4 L% D5 h                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
& w$ |* C3 ?  e1 |                        0 D+ {$ ]2 i4 m/ n/ h( h6 r+ x5 t, |
                        actionGroup.createActionForEach$message(list, agentSel);
* c6 f3 D8 Y& E5 l; e; Q) W9 u                        actionGroup.createActionTo$message(this, swarmSel);) _& |5 S6 T& v; j
                        schedule.at$createAction(0, actionGroup);, Y2 d4 u( r9 K% e: o
                        schedule.at$createAction(1, actionGroup);
3 t( M- ~% v7 ]3 i& z- T                        schedule.at$createAction(2, actionGroup);* F: Y( g2 T) ?# M! g
) E) \: e2 b$ E
                } catch (Exception e) {# G, W7 T: X4 h- j
                        e.printStackTrace(System.err);
- s+ g9 S4 E- }9 y0 V% k                        //System.out.println(e);
5 I' J3 z3 r, r                        System.exit(1);+ f0 {4 k. y. a0 ^9 y0 G3 I4 M- z# i
                }
8 [) `9 y3 ~/ ~4 a
2 Q( H0 ^# u# z/ L( Z
- I4 ?- q4 D! s2 Y' A        }8 }# y5 y: O+ l

# D* ^( W+ F* r$ k; i        private void swarmSetp() {: B$ t- B) m* @1 d
                list.addLast(new Agent(Id));
! a4 J5 g! [' c: r) V+ A  b% b                Id++;2 f  `9 U! _; m( {! b0 @9 w* d5 y9 i
        }
% F" p* L2 G0 o1 c( Y: }; k! V/ B1 l. b3 p" e  t0 j
        public Activity activateIn(Swarm context) {
# W1 K3 Y% [3 P; U                super.activateIn(context);2 W7 X# Q5 j4 i+ [! l- v+ E7 I4 W
                schedule.activateIn(this);
. J: S0 T# X* U( ^7 I                return getActivity();) g* ]" K; \  `9 j$ V
        }" `/ [! b. |) p/ F$ e- `; \

% Z  B& L3 w3 s  O: A        public static void main(String[] args) {
/ E9 ^8 r% g% ]( _0 {2 k                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
) ^1 ~3 t# s2 O$ S                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
" T9 G& D. @. r. R2 X, r: `                swarms.buildObjects();
  M  a3 u# u9 Y$ k2 f" {% p9 S                swarms.buildActions();0 N6 d4 D. z' j& d
                swarms.activateIn(null).run();
2 \: l* y1 a5 H0 a2 I        }
* r5 }% |' [+ \% F/ T
  l& T. T, Q. ~3 p4 |}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-8-1 17:38 , Processed in 0.019806 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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