设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 11642|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 9 e) T) U5 l* ~

6 |: ~. O8 h/ i5 P& w' v本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
4 K8 V1 E# j: m! j$ W以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.* @, X! x0 r( i/ j2 ]5 @
swarm.SignatureNotFoundException
- q  c# ]3 h3 t& Z  A        at swarm.Selector.<init>(Selector.java:76)' r; |9 D  ~+ {2 z0 B6 I* l
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
3 _  y7 d, r( H9 Q: \" w4 Q! L        at ActionGroupDemo.main(ActionGroupDemo.java:67)
+ R2 H1 h1 V2 d" ^/ Y! l* L* b7 M4 y, A: d9 ?& F$ ^
4 c# a  I+ h# N
import swarm.objectbase.SwarmImpl;8 L$ j& ]" b2 L
import swarm.objectbase.Swarm;! o( ]- i# d8 L+ P) L: a* \
import swarm.activity.ScheduleImpl;' F& R0 D5 P7 u' ]6 y( ~( S9 g- O0 ^
import swarm.activity.Activity;
6 Y- V2 Z* j$ x$ W, A, oimport swarm.activity.ActionGroupImpl;! }0 P7 d. p7 l. w+ |$ k; \, X
import swarm.collections.ListImpl;  H" m: Q# R, _1 f+ r" N, J& f6 O1 ?
import swarm.defobj.Zone;
9 s6 w9 Q" U% Vimport swarm.Globals;  Q; n: G8 g# y. ^
import swarm.Selector;2 @0 C& @0 L. m# F* S" d8 ]) H, @
import swarm.activity.ActionGroup; / l' A6 p( T) u% Y; ?
class Agent {
" @% Y# E% W" X% C% e5 F4 j9 j        char id;
* j% Y8 C5 L! G- ^) k. U3 J( {; R, Z9 b9 {( o% ?/ s
        Agent(char id) {! u% x+ @+ p% Y* J+ [
                this.id = id;
( \' P( r" m- e# ^' N9 R' g7 c0 P        }
+ ]  |! y6 w- l
8 _( h4 z$ v' I; g  P  o/ D        public void agentStep() {
0 R' s) t, s. i) r9 U) j4 }                System.out.println(id + ":" + Globals.env.getCurrentTime());" a6 R" L3 }0 t
        }
6 ^; P! h/ }- F% i# ]; t}6 p: y( b. u2 F( T- h9 n+ U. ^
- c; e* d; `4 W* Y, @. a
public class ActionGroupDemo extends SwarmImpl {4 J, Q3 m9 |( ]5 U# V# b
        ScheduleImpl schedule;+ S2 j& I* |1 ~$ e5 N9 f4 d
        ActionGroupImpl actionGroup;
) S$ H  Y1 p( ^; u% A        ListImpl list;. i# }. x' d6 K
        char Id = 'a';/ ~. D9 k( q4 [
$ A* P& ?8 C7 [+ j9 D2 Y% d
        ActionGroupDemo(Zone aZone) {
! }  k# h" l: [& Q. W                super(aZone);- M3 ~( i# W' J
                list = new ListImpl(aZone);
1 P' Y# f; `, a+ l! _5 E6 }8 J0 o                swarmSetp();6 S% D4 S. V, y+ l) U
                actionGroup = new ActionGroupImpl(aZone);$ a9 y% _1 h( c9 e; x0 k' M
                schedule = new ScheduleImpl(aZone);9 a# `) L% O5 ?/ k# w
                try {
; n0 m$ B/ A' q4 c                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
' C  b4 x  B5 e* T                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行3 p/ l6 Q, Z: F  C2 C
                        
/ P# F4 O" d6 Y8 E                        actionGroup.createActionForEach$message(list, agentSel);
% s3 j+ L, v" r                        actionGroup.createActionTo$message(this, swarmSel);
- d, `6 x: ], O" j; }/ C9 ]' n                        schedule.at$createAction(0, actionGroup);
/ e, `5 H  o- r$ @                        schedule.at$createAction(1, actionGroup);
# G6 ~/ l) w. f( N9 C                        schedule.at$createAction(2, actionGroup);0 D* e6 R( p5 ]4 v1 z

4 I" P# a. S# B6 [* g2 q9 R                } catch (Exception e) {2 A0 b4 g+ D& S& r% W: N
                        e.printStackTrace(System.err);
6 n  h. j  H2 s# D8 R                        //System.out.println(e);7 e9 p* o8 y5 }5 d0 P$ k" N  k
                        System.exit(1);8 Y' n9 S+ l8 W) J/ ^* z
                }
6 W& w0 l% F9 M  {5 N
( V' {$ g$ V( t
5 U: c& v9 `) k" W: g9 u. F        }, H& y% w0 k6 A$ p* |4 M
' B; [) X% Q4 x
        private void swarmSetp() {
' |4 x3 _3 G& r/ h& e! }2 t                list.addLast(new Agent(Id));
* ~; Q" m' F  A                Id++;
) n0 c$ M4 c! K# I* @* E$ l& U        }
+ I7 X: Q5 E- k" G4 S0 K
# D# ~, ?% C4 H7 R- G/ Q        public Activity activateIn(Swarm context) {
2 L2 A9 K0 K- q                super.activateIn(context);* G/ O' E$ }  h1 a( j9 R
                schedule.activateIn(this);
7 C# w3 l& y" x% |# y6 X; W: ^2 V                return getActivity();
( b5 w% a4 e* i" V        }
' d6 j! P/ I& B' H9 ^2 D) x/ I: h  W7 G3 O
        public static void main(String[] args) {
7 U7 y- I- ?9 E' ~' }                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);( r, _* s6 j' \7 n/ a0 k4 J
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
: Z* W. h& p4 F* @# u0 c" k3 `3 C                swarms.buildObjects();6 H2 O% @. I- [0 `1 k- W  F
                swarms.buildActions();+ w* e3 C# F5 F. {4 q2 {. o
                swarms.activateIn(null).run();8 R6 i; x" q( K; D
        }4 _' G. p6 C4 E% S5 h$ `$ b

0 ~# J/ F4 Z* h+ S9 f6 Q( t- ?1 O/ X}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-7-18 01:45 , Processed in 0.017037 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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